没有收到Alamofire的回应

时间:2019-10-22 10:51:14

标签: ios swift alamofire

使用Alamofire进行远程JSON响应。 我有一个很奇怪的问题。在通过电缆连接的设备上运行我的应用程序时,它工作正常,并获得了所有响应。但是,当通过电缆断开设备的连接时,响应时间会增加到5分钟到30分钟,并且如果我将设备连接到充电器或再次连接到MacBook,它可以正常工作,但如果未连接,则会卡住。

    func getData()
    {
        let baseUrl = URL.init(fileURLWithPath: "")
        let headers:HTTPHeaders = ["Content-Type":"application/json"]
        Alamofire.request(baseUrl, method: .get, parameters: nil, encoding: URLEncoding.default, headers: headers)
        .responseJSON
        { response in
            switch(response.result) {
                case .success(_):
                    if response.result.value != nil{
                        let jsonData = response.result.value as? Dictionary<String,AnyObject>
                        print(jsonData)
                    }
                case .failure(_):
                    print(response.result.error!)
                    break
            }
        }
    }

2 个答案:

答案 0 :(得分:0)

您是否对Session Manager使用其他任何类?如果是,那可能会引起问题。因此,删除那个。

答案 1 :(得分:-1)

您可以共享您的api请求吗?

将传输安全性添加为以下一种可能的解决方案:

在根标记内的info.plist中添加此代码

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoadsInWebContent</key>
    <true/>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>