gpt4 book ai didi

ruby-on-rails - 在 Rails API token 身份验证中,www-Authenticate header 的领域 ="Application"部分是什么?

转载 作者:行者123 更新时间:2023-12-04 06:07:46 25 4
gpt4 key购买 nike

我有一个带有此 Controller 的 rails 应用程序:

class EpisodesController < ApplicationController
before_action :authenticate

def index
episodes = Episode.all
render json: episodes, status: 200
end

protected
def authenticate
authenticate_or_request_with_http_token do |token, options|
User.find_by(auth_token: token)
end
end
end

如果我发送这个 curl 请求,我会用这些 header 返回这个响应:
$ curl -IH "Authorization: Token token=fake" http://localhost:3000/episodes.json
HTTP/1.1 401 Unauthorized
Content-Type: text/html; charset=utf-8
WWW-Authenticate: Token realm="Application"

www-authenticate header 有什么用?只是约定俗成吗?领域=“应用程序”用于什么?我读到这个:

The Token part means that the given resource uses token authentication. The resource under that URI is currently part of the “Application” realm. The realm value allows protected resources to be partitioned into different sets of protection spaces, each with its own access policies.



但我不明白...

最佳答案

WWW-Authenticate标题必须包含在 401 未经授权的响应中(请参阅 HTTP 1.1 RFC ),因此它不仅仅是一种约定。

通过该值,您可以指示支持哪种身份验证机制(在本例中 Token ,另一个身份验证方案可能是 Basic 用于基本身份验证)。该领域可以设置为您想要的任何值,并且应该标识安全区域。在基本身份验证的情况下,此值将显示在登录对话框中。

关于ruby-on-rails - 在 Rails API token 身份验证中,www-Authenticate header 的领域 ="Application"部分是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32825826/

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