为啥不建议在 Alamofire 中修改授权标头的会话配置?

Posted

技术标签:

【中文标题】为啥不建议在 Alamofire 中修改授权标头的会话配置?【英文标题】:Why is not recommended to modify session configuration for authorization headers in Alamofire?为什么不建议在 Alamofire 中修改授权标头的会话配置? 【发布时间】:2015-06-03 05:59:28 【问题描述】:

发件人:https://github.com/Alamofire/Alamofire

修改会话配置

...示例代码...

不建议将其用于 Authorization 或 Content-Type 标头。 相反,使用 URLRequestConvertible 和 ParameterEncoding, 分别。

好的,我不会使用它,但是为什么不建议它用于处理 Authorization 标头?

【问题讨论】:

【参考方案1】:

我们推荐这个有几个原因。

    会话配置头应该只为那些在会话的整个生命周期中不会改变的设置,例如Accept-EncodingAccept-LanguageUser-Agent等。如果你需要设置一个可能会在请求之间更改的标头,那么您应该将该标头添加到NSURLRequest 本身,它优先于会话配置标头。

    在创建配置后修改会话的配置标头在 ios 7 和 iOS 8 之间的行为不一致。有关详细信息,请参阅此thread。

希望这有助于澄清一些事情。

【讨论】:

是的,确实如此!特别是具有技术方面的 2 号。谢谢

以上是关于为啥不建议在 Alamofire 中修改授权标头的会话配置?的主要内容,如果未能解决你的问题,请参考以下文章

Alamofire 5中未设置授权标头?

Alamofire 不发送当前标头(swift)

为啥请求中不包含授权标头? - 认证0

如何在 Alamofire 中请求带有正文和标头的 JSON?

当我在授权标头中发送有效的不记名令牌时,为啥我的 Spring-Cloud Gateway / OAuth2-Client 没有通过身份验证?

如何覆盖 Alamofire SessionManager 以修改响应以添加标头?