2017-06-19 56 views
0

无法将类型无极()的返回表达 - > DataRequest返回型无极>无法将类型无极返回表达式(_,_) - > DataRequest返回型无极<DataResponse,AnyObject >>

我的功能是

func postJson(_ url: String, parameters: [String: String]) -> Promise<DataResponse<AnyObject>> { 

     var request = URLRequest(url: URL(string: url)!) 
     request.httpMethod = "POST" 
     request.setValue("application/json", forHTTPHeaderField: "Content-Type") 

     request.httpBody = try! JSONSerialization.data(withJSONObject: parameters) 

     return Promise { fulfill, reject in 

     manager.request(request) 
      .responseJSON { response in 
       fulfill(response) 
     } 

而且我上回无极线这个错误。我如何转换?

我试图改变我的返回签名到Promise<DataRequest, Error,并获得该行的诺言太专业化有两个参数,而不是1

回答

0

问题的编译错误是fulfill因为它的预期参数DataResponse<AnyObject>但你逝去的DataResponse<Any>

postJson方法的返回类型更改为Promise<DataResponse<Any>>应该可以解决您的问题。

改变这一行

func postJson(_ url: String, parameters: [String: String]) -> Promise<DataResponse<AnyObject>> { 

func postJson(_ url: String, parameters: [String: String]) -> Promise<DataResponse<Any>> { 
+0

这工作,谢谢。 – quantumpotato

相关问题