gpt4 book ai didi

ruby-on-rails - 如何使用 Devise Token Auth 通过 API 更改密码? rails 5

转载 作者:行者123 更新时间:2023-12-05 05:19:04 24 4
gpt4 key购买 nike

我正在尝试使用 Devise Token Auth gem 更改用户的密码。但是有些参数我不知道它是否好,因为我是从数据库中提取它们的。具体来说,来 self 的用户表的 Tokens 列。

根据文档告诉我的内容,这是我对它们各自 header 的请求:

PUT /auth/password HTTP/1.1
Host: localhost
Content-Type: application/json;charset=utf-8
token-type: Bearer
access-token: $2a$10$d6b2GP5N3WT4/fR62S1VL.kiLx9w0YA6Rb5aVYQtXMBPImLx9ix2i
client: -Z2_wBWzH1GHiAjCAaHAKA
expiry: 1509654584
uid: my@email.com

password=123456789&password_confirmation=123456789

这是我的用户表的 token 列,对应于我的电子邮件 my@email.com 的用户:

{
"oJ7t-1kXUFsde9J_euKuZA":{
"token":"$2a$10$cYAP0ZVndFJz9JUK4tvoOuc96k/JBtgmSyn0cmwvWwy0o.J0XOtKW",
"expiry":1509642442,
"last_token":"$2a$10$Boy8Yp2Znb0uOS9tt/3KYum7PX/Jjmb.Igzo5GUs4tDRCejDU5bya",
"updated_at":"2017-10-19T12:07:22.356-05:00"
},
"-Z2_wBWzH1GHiAjCAaHAKA":{
"token":"$2a$10$d6b2GP5N3WT4/fR62S1VL.kiLx9w0YA6Rb5aVYQtXMBPImLx9ix2i",
"expiry":1509654584,
"last_token":"$2a$10$qFTq5JqGUBXayXODsKUSROjjw.TrFYVGtf.EEULCzRWIhMa79ycZS",
"updated_at":"2017-10-19T15:29:44.204-05:00"
}
}

但是,我请求的结果总是得到 401 Unauthorized

我正在使用第二个 json 对象,其中我将 key 作为客户端参数和 token 属性,我通过 PUT 将其作为我的 access_token 参数放在我的请求中。

我是否使用我设置的参数正确地执行了我的请求? O 如何获取客户端和访问 token 参数?

最佳答案

它没有准确回答有关 401 未授权错误的问题,但这是我根据 the documentation page 所做的。 .将 config.check_current_password_before_update 设置为 :password 这意味着如果用户想要更新他的密码,他还需要提供他当前的密码。

检查您的 rails routes 以获得正确的路径。我的是:PUT/auth/password/

然后在您的请求正文中:

{"current_password":"old_password","password":"new_password","password_confirmation":"new_password"}

关于 401 未授权错误,as suggested here ,这可能是由于您的用户身份验证所致。

关于ruby-on-rails - 如何使用 Devise Token Auth 通过 API 更改密码? rails 5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46839124/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com