我正在尝试将Alamofire用于具有Json主体和需要基本身份验证的标头要求的Api。当我在Postman中测试调用时它工作正常,但是使用AlamoFire我收到服务器错误。
我正试图看看从Alamofire出来的电话是什么 - 但我似乎无法看到它:(这是我正在使用的代码)
编辑:
错误低于
[" errors":{}," errorMessages":< __ NSSingleObjectArrayI 0x6000000035c0>(内部服务器错误)]
请求低于
NSLog("Request: \(request!.httpMethod!) - \(request!.url!.absoluteString)\n\(request!.httpBody.map { body in String(data: body, encoding: .utf8) ?? "" } ?? "")")
我认为请求没有正确创建,但有助于理解我应该看到的内容。
编辑:这一行有助于另一个问题: {{1}}
感谢我已将此问题链接到帮助的副本。
答案 0 :(得分:2)
打印整个请求:
let request = Alamofire.request(endpoint, method: .post, parameters: paramsEncoded, encoding: JSONEncoding.default, headers: headers)
.responseJSON(completionHandler: { (response) in
print(response.request)
print(response.request?.httpBody)
})
print("REQUEST = \(request)")
我不确定你能不能获得更多信息。
答案 1 :(得分:-1)
您需要在请求中添加标题。
let urlString = "https://httpbin.org/get"
let headers = ["Authorization": "123456"]
Alamofire.request(urlString, method: .post, parameters: ["foo": "bar"],encoding: JSONEncoding.default, headers: headers).responseJSON { response in
print(response.result.value)
}