Alamofire - 授权承载和授权自定义

时间:2018-05-18 17:40:08

标签: http-headers authorization alamofire bearer-token

我会保持这个问题非常简短。在下面的屏幕截图中,邮递员在标题字段中获取两个授权令牌。

enter image description here

缺少两个令牌中的任何一个会导致授权错误。我无法使用 Alamofire 在请求中同时发送两个标头。当我发送这样的标题时:

let headers: HTTPHeaders = ["Authorization": "Bearer " + WSO2AuthToken,
                            "Authorization": "Custom " + customAuthToken]
let request = Alamofire.request(url!,
                                method: HTTPMethod.get,
                                parameters: parameters,
                                encoding: JSONEncoding.default,
                                headers: headers)

通过错误说:

  

线程1:致命错误:字典文字包含重复的键

现在问题是我如何在请求的标题中发送两个令牌?

1 个答案:

答案 0 :(得分:1)

您可以使用Authorizationauthorization作为单独的密钥来逃避它,这应该由服务器正确解释(因为标头不应区分大小写)。从技术上讲,除了Cookies标题的特殊情况之外,HTTP标题不应该有重复项,因此我建议您的自定义授权也使用自定义标题,例如X-Authorization。< / p>