无法将typesPromise(_,_) – > DataRequest的返回expression式转换为返回typesPromise <DataResponse,AnyObject >>

无法将typesPromise( ) – > DataRequest的返回expression式转换为返回typesPromise>

我的function是

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行时遇到这个错误。 我如何转换?

我试图改变我的返回签名Promise<DataRequest, Error并得到一个编译错误,该承诺太专门用2参数而不是1。

问题与fulfill因为它期待参数DataResponse<AnyObject>但您传递DataResponse<Any>

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

改变这一行

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

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