【问题标题】:how do I return a Bearer Token supplied by my server如何返回我的服务器提供的承载令牌
【发布时间】:2021-05-19 03:54:46
【问题描述】:

我正在使用 Vapor 来处理 http 请求。我已经实现了注册和登录,以及其他功能代码。在注册时,会生成一个 Bearer Token,因此我可以将其返回或写入我将要呈现的页面。

该页面包含两种形式,其中一种生成需要授权的请求,因此我需要将该请求与不记名令牌相关联。我该怎么做呢?通过显式设置将发送到服务器的表单请求的标头?通过 cookie?

【问题讨论】:

  • 承载令牌是您需要在标头中传递的身份验证令牌类型。
  • 对,好的,那么这是在服务器上的表单定义中完成的吗?我只在 Ajax 上下文中找到了通过 js 完成的描述。当我可以控制收到的表单时,如何将其编码到表单中?
  • 你不需要编码。只需传入像“Bearer Token”这样的标题:“your token”。你得到这样的令牌:例如ejfklashik5746sakjkafddsfgsdgfgtfdgfdgfdg
  • 对不起,感谢您的帮助,但这对我来说不是很清楚。我很清楚我必须通过一些请求传递一个不记名令牌,我可以通过 Thunder Client 做到这一点。但是,如果我将它作为响应的一部分传递,它不会特定于给定的请求,每种形式都不同。所以它必须与表单相关联。
  • 检查这里:raywenderlich.com/… 它可能会帮助你理解。

标签: swift authorization bearer-token vapor


【解决方案1】:

如果您使用 HTML 编写传统 Web 应用程序,则不适合承载身份验证,因为您无法在请求中附加自定义标头。您应该使用基于会话的身份验证作为described in the docs

【讨论】:

  • 知道了。我认为文档页面的组织方式并不容易识别这种不兼容性。
  • 这意味着它将从服务器端设置。对吗?
  • 有点,会话 ID 通过 cookie 传递给服务器,用户被 Vapor 持久化在会话中
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-10-23
  • 2021-01-07
  • 1970-01-01
  • 2020-05-25
  • 2018-10-21
  • 2021-03-11
  • 2015-10-01
相关资源
最近更新 更多