首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用OAuth授权代码授予类型返回正确的HTTP状态代码

使用OAuth授权代码授予类型返回正确的HTTP状态代码
EN

Stack Overflow用户
提问于 2016-02-15 14:25:16
回答 1查看 3.2K关注 0票数 1

我正在工作的一个新网站有以下组件:

  • AngularJS/HTML5 5前端
  • 支持前端的Web后端
  • OAuth服务器-对用户进行身份验证并提供令牌

未经身份验证的用户的工作流:

  1. 视图前端,它调用Web来确定是否经过身份验证。
  2. 如果未通过身份验证,则将用户重定向到OAuth服务器
  3. 成功认证后,浏览器将使用Auth代码重定向回网站
  4. Auth代码被发送到Web
  5. Web逻辑请求从OAuth服务器访问令牌
  6. cookie用于将令牌与用户关联。
  7. 其他请求发送cookie,用于授权用户。

我的问题是,步骤1的HTTP状态代码应该发送什么?通常,您发送401不是未经授权的,但这是如果您正在使用HTTP身份验证。由于身份验证是由不同的服务器处理的,所以这是没有意义的。403似乎也不正确,因为它意味着状态不会改变。

我应该只使用泛型400还是自定义的400.X代码?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-15 16:25:38

虽然在您的情况下发送HTTP 401 Unauthorized作为响应没有什么问题,但是更好的选择是发送HTTP 302 Found,这意味着当用户试图访问前端视图时,在本例中适用的资源(OAuth服务器Url)是在其他地方找到的。

您可以在响应的OAuth头中提到Location服务器Url,这样客户端就可以将未经身份验证的用户重定向到预期的位置。

代码语言:javascript
复制
HTTP 302 Found
Location: https://oath-server-url.com
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35411866

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档