有没有办法要求对WP REST API GET请求进行身份验证?
我调查的人总是添加一个命令,如果is_user_logged_in()
. 但它完全关闭了这些外部查询。我的目的是让拥有oAuth令牌的人可以请求GET。
有没有办法要求对WP REST API GET请求进行身份验证?
我调查的人总是添加一个命令,如果is_user_logged_in()
. 但它完全关闭了这些外部查询。我的目的是让拥有oAuth令牌的人可以请求GET。
我今天一直在研究一个类似的问题。以下是我所做的:
add_filter(\'rest_dispatch_request\', function($dispatch_result, $request,
$route, $handler) {
if (!is_user_logged_in()) {
$dispatch_result = new WP_Error(
\'rest_not_logged_in\',
__( \'You are not currently logged in.\' ),
array( \'status\' => 401 )
);
}
return $dispatch_result;
}, 10, 4);
您可能需要使用$处理程序来确定要限制哪些请求。我正在我的一个WordPress站点中构建一些与第三方API集成的功能,该API使用OAuth 2.0。每次我需要一个新的访问令牌时,我都会使用客户端ID和密码,因为访问令牌在24小时后过期,所以每天至少会使用一次。(生成新的访问令牌也会生成新的刷新令牌,并且先前的刷新令牌将无效。)我将令牌与expires\\u一起存储在数据库的options表中。我应该在哪里存储我的客户ID和机密?WordPress中有没有一个典型的地方可以存储这样的东西?现在我只是在wp配置中定义了它们。php。虽然我认为这应该可以