当我尝试使用 swift 4.1 中的此 http 授权 header 通过以下代码从服务器获取请求时:
urlRequest.setValue("application/json", forHTTPHeaderField: "accept")
urlRequest.setValue("Bearer\(token)", forHTTPHeaderField: "Authorization")
但不幸的是,我收到了一个 401 Unauthorized
响应并在响应中打印了 header ,结果是 Www-Authentication: Bearer error="invalid_token"
。
我尝试使用在 Authorize
部分使用 SwaggerUI
登录时生成的 token ,结果是正确的,并且 token 已被验证和接受。
我不确定是什么原因导致了这个错误,但我很怀疑它与 URLRequest
有关。
有没有人也遇到了和我一样的问题并且有解决方案?
最佳答案
找到解决办法了!我希望我对这个解决方案有所帮助,我所做的只是让 token 不是可选的,而不是 token
添加 !
帮助我解决了这个问题!
Credit for @CZ54 using the
guard
function instead of!
guard 让 token = token else { return }
urlRequest.setValue("Bearer\(token)", forHTTPHeaderField: "Authorization")
关于ios - Swift 4.1 JWT http header 承载在服务器中返回401,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50922758/