Alamofire Swift 2.0 <unknown>:0:错误:元组模式无法匹配非元组类型的值'Response <string,nserror =“”>'

时间:2015-09-22 09:02:57

标签: alamofire

我正在使用Manger类来请求。当我编译它时显示

<unknown>:0: error: tuple pattern cannot match values of the non-tuple type 'Response<String, NSError>' Error`.

它在老Swift中工作正常Xcode 6.*。但在Xcode 7.*它不起作用。

let aManager = Manager.sharedInstance
    aManager.request(.GET, URLStrings.BASE_URL + URLStrings.CATEGORIES)
        .responseString { _, _, result in
            print("Response String: \(result.value)")
        }
        .responseJSON { _, _, result in
            print("Response JSON: \(result.value)")
    }

点击responseString后会显示?
请帮助我。

4 个答案:

答案 0 :(得分:1)

我认为你使用的是3.0+ Alamofire。 我最近遇到这个问题,这是我的解决方案: 代码将_, _, result替换为response并按response.dataresponse.result.value

查询回复数据

有关新响应结构的更多信息,您可以在此处查看官方文档:E.164

希望这些有所帮助。

答案 1 :(得分:0)

您正在使用Alamofire 3.0.0-beta.1预发行版。您应切换回Alamofire 2.0.2(最新版本),直到我们将所有文档和迁移指南更新为止。

答案 2 :(得分:0)

我将代码更改为此表单。现在我要做的就是将数据转换为JSon Object。但它现在正在为我工​​作。

{{1}}

答案 3 :(得分:0)

我在这里查看官方文件:Response Serializers

在文档中,找到响应序列化程序,阅读示例代码,我将其发布在此处:

Alamofire.request(.GET, "http://httpbin.org/get", parameters: ["foo": "bar"])
     .responseJSON { response in
         debugPrint(response)     // prints detailed description of all response properties

         print(response.request)  // original URL request
         print(response.response) // URL response
         print(response.data)     // server data
         print(response.result)   // result of response serialization

         if let JSON = response.result.value {
             print("JSON: \(JSON)")
         }
     }

希望它可以帮助你〜