Alamofire 无法在默认设置下创建用户代理

Posted

技术标签:

【中文标题】Alamofire 无法在默认设置下创建用户代理【英文标题】:Alamofire CAN'T make User-Agent at default setting 【发布时间】:2020-09-02 06:41:27 【问题描述】:
    AF.request("http://myURL.com/hey",
               method: .get,
               parameters: nil,
               encoding: URLEncoding.default,
               headers: nil,
               interceptor: nil).response  res in
                debugPrint(res)
    

我为 HTTPRequests 等安装 Alamofire 5.2 版本。 它只是发送一个简单的 GET 请求。

我从服务器收到 500 错误,因为没有 User-Agent 标头。 当我检查服务器的请求日志时,没有 User-Agent 标头。

只是一个简单的get请求,为什么Alamofire不发送User-Agent header?

【问题讨论】:

【参考方案1】:

服务器返回 500 很奇怪,除非有 User-Agent。 Alamofire 总是附加一个User-Agent(为方便起见,它不是必需的),所以我的猜测是您的服务器由于某种原因无法解析 Alamofire User-Agent。您应该记录您的传出流量以仔细检查。如果不知何故没有User-Agent,您可以使用Alamofire 的HTTPHeader.defaultUserAgent 值直接添加。

【讨论】:

以上是关于Alamofire 无法在默认设置下创建用户代理的主要内容,如果未能解决你的问题,请参考以下文章

ios电报无法登陆

用python零基础写爬虫--编写第一个网络爬虫 -2 设置用户代理

如何为SVN的所有本地用户设置默认代理设置?

Selenium + Chrome Diver使用带用户名密码认证的HTTP代理的方法

CentOS 7 用户怎样安装 LNMP

关于Charles手机设置好代理后,无法上网的问题