Woocommerce Rest API v2 中用户登录/注册的端点

Posted

技术标签:

【中文标题】Woocommerce Rest API v2 中用户登录/注册的端点【英文标题】:Endpoint for user login/signup in Woocommerce Rest API v2 【发布时间】:2015-09-30 15:09:20 【问题描述】:

我已经在 Woocommerce REST API 文档中完全搜索了用户登录/注册的端点,但找不到它。谁能给我提供端点及其文档的链接?

【问题讨论】:

【参考方案1】:

您可以create / signup 用户通过使用参数点击customers/ 端点:usernameemailpassword

稍后您可以通过点击customers/<userid> 插入更多详细信息,例如送货地址或帐单地址

现在,REST API 中没有可供登录客户使用的端点,但是,

You can achieve this by:
在您的 WordPress 管理员中安装 JWT Authentication for WP REST API 插件。 安装此插件后,现在您拥有登录客户的端点

https://yourdomain.com/wp-json/jwt-auth/v1/token?password=123456789&username=nicename

注意:建议使用用户名而不是电子邮件来登录客户,因为 WordPress 通过用户名对用户进行身份验证。

这是最后一步:不要忘记在您的 wp-config.php 文件中添加 define('JWT_AUTH_SECRET_KEY', 'your-top-secrect-key');

【讨论】:

【参考方案2】:

您可以通过多种方式实现这一目标。

第一种方法是:

它并不特定于 WooCommerce,也适用于所有 WordPress 登录和注册


注册:

方法 POST

参数:用户名、电子邮件、密码

https://example.com/wp-json/wp/v2/users

它将创建一个新用户


登录:

方法 POST

参数:用户名/电子邮件,密码

https://example.com/wp-json/jwt-auth/v1/token

它将生成一个访问令牌,您可以将其传递给您以后的请求。

您可以使用JWT Authentication for WP REST API 进行登录

【讨论】:

当我传递电子邮件时,密码,它说用户名是必需的。 您是否尝试将您的电子邮件 ID 作为用户名传递,因为 wordpress 接受两种登录方式 这个确实帮助了我。该插件是我需要的。感谢您的回答【参考方案3】:

供参考: Woocommerce 用户或客户实际上是 Wordpress 用户,更像是博客订阅者(就像 woocommere 产品是 wordpress 帖子一样,因此要创建用户,您可以为此目的使用 WP_API 函数。

wp_create_user 使用最少的参数(用户名、密码和电子邮件)创建用户。 wp_insert_user 使用扩展用户数据创建用户。 我假设用户角色必须与 woocommerce 处理的角色匹配 (customers or shop managers) 现在还有一个用于在 WooCommerce REST API (http://woothemes.github.io/woocommerce-rest-api-docs/#customers) 中创建/更新/列出客户的端点,但目前不支持登录/身份验证。

对于登录/身份验证,WP_API 中有 two mechanisms:CookieAuth 和 OAuth 如果您解释一下您要完成的工作,会更容易提供帮助。

【讨论】:

以上是关于Woocommerce Rest API v2 中用户登录/注册的端点的主要内容,如果未能解决你的问题,请参考以下文章

无法在 wordpress 5.8.1 中访问 woocommerce rest api

登录时 WooCommerce REST API 身份验证失败

WooCommerce REST API致命错误连接问题

WooCommerce REST API 无效的 JSON

WooCommerce REST API - 按修改日期过滤订单

如何在Woocommerce Rest API中获取Tokenization密钥?