节点 WPAPI REST 与 JWT 身份验证相结合?

Node WPAPI REST with JWT Authentication combined?

我有一个带有 UI5 JavaScript 前端的 Wordpress REST-API 后端,它加载一些 Post-Data 来列出它们。

我想在前端通过一个简单的 Login-Form 来保护它。

为了获取和创建帖子,我使用 Node-WPAPI 进行基本身份验证,如下所示:

this._oWp = new WPAPI({
    endpoint: 'http://<domain>/wordpress/wp-json',
    username: '<user>',
    password: '<pass>'
});

但这种方法不符合我的需要,因为甚至可以使用 wrog 密码创建此 WPAPI 实例。因此我必须先向受保护的路由发送请求才能知道我的密码是否正确。

为了直接知道我的登录是否正确,我的想法是首先通过“WP-API 的 JWT 身份验证”获取令牌,这确实有效,我得到了令牌。

但是我的 WPAPI 端点这样做会导致错误 "jwt_auth_bad_auth_header、"授权 header 格式错误。"

有没有办法同时使用 WPAPI 和 JWT Auth?或者登录凭据如何通过WPAPI实例进行身份验证并在登录凭据错误时直接得到通知?

我用 WPAPI-Only-Approach 管理了这个,因此只需向需要正确身份验证的 .users().me() 发送请求即可证明用户输入了正确的凭据。否则您会收到“未通过身份验证”错误。

let oWp = new WPAPI({
    endpoint: <your_endpoint>,
    username: this._oAuth.getProperty("/Username"),
    password: this._oAuth.getProperty("/Password"),
});

oWp.users().me()
.then( user => {
    this._oWp.setData(oWp);
    this._oRouter.navTo('home');
}).catch( error => {
    console.log(error);
});