集成Wordpress授权并使用Android登录

时间:2017-07-31 10:23:03

标签: android wordpress rest jwt

我正在尝试为Wordpress网站构建原生Android应用。我正在使用WP REST API v2(https://wordpress.org/plugins/rest-api/)来获取帖子和其他必需的属性。我需要对用户进行身份验证,我已经为WP REST API使用了JWT身份验证(https://wordpress.org/plugins/jwt-authentication-for-wp-rest-api/) 生成和验证令牌的API工作正常。但是,当我尝试在标题中传递生成的令牌时,我会继续收到以下错误。

{
    "code": "jwt_auth_bad_config",
    "message": "JWT is not configurated properly, please contact the admin",
    "data": {
        "status": 403
    }
}

关于出了什么问题的任何建议?请求帮助以使这个东西运行。

1 个答案:

答案 0 :(得分:3)

TL; DR; 将JWT_AUTH_SECRET_KEY的定义移至wp-config.php文件的顶部

详细解决方案:

如插件的安装文档中所述, JWT需要一个密钥来签署令牌,这个密钥必须是唯一的,永远不会透露。

因此,您必须将此行添加到您的wp-config.php文件

define('JWT_AUTH_SECRET_KEY', 'your-top-secrect-key');

然而,文档没有说的是,你不应该把它放在文件的末尾。 在其他定义(AUTH_KEY,SECURE_AUTH_KEY,... NONCE_SALT)之后插入此行,403错误应该消失。

我想这是因为JWT_AUTH_SECRET_KEY的定义必须在require_once之前完成(ABSPATH。'wp-settings.php');