我曾嘗試使用以下代碼來處理請求,但結果爲400錯誤。 API由標題和正文組成。標題有兩個字段,即「授權」和「內容類型」。正文格式被添加到下面的參數。如何在Alamofire中請求帶有body和header的JSON?
func file(sender: abc){
let baseUrl = "url」
let params: [String : Any] = [
"profile": [
「Type": [
" Real Estate",
"Estater",
"Construction",
"Entertainment"
],
"Size": [
"large",
「small」
],
"Level": [
「A」,
「B」
],
「Name」 : [
「John」,
「Harry」
]
]
]
let header = [
"Authorization" : "bearer e2ff3aa3-63a3-41d1-bc5a-3e8c88adeaaa",
"Content-Type" : "application/json"
]
// var request = URLRequest(url: URL(string:baseUrl)!)
// request.httpMethod = HTTPMethod.post.rawValue
// request.setValue("application/json", forHTTPHeaderField: "Content-Type")
// request.addValue("bearer e2ff3aa3-63a3-41d1-bc5a-3e8c88adeaaa", forHTTPHeaderField: "Authorization")
// let data = try! JSONSerialization.data(withJSONObject: params as Any, options:JSONSerialization.WritingOptions.prettyPrinted)
//
// request.httpBody = data
Alamofire.request("\(baseUrl)", method: .post, parameters: params, headers:header).responseJSON { response in
print(response.request ?? "no request") // original URL requ est
print(response.response ?? "no response") // HTTP URL response
print(response.data ?? "no data") // server data
print(response.result) // result of response serialization
print(response.response?.statusCode ?? "noCode")
if(response.response?.statusCode != nil){
switch response.response!.statusCode {
case 200:
print("Success")
let json = JSON(data: response.data!)
print(json)
sender.onSuccessCall()
case 400:
print("Error in authentication")
case 401:
print("Error authentication object was not found")
default:
print("dEfault")
}
}
}
}
請幫助解決售後服務這個問題。
,我們不知道你的API希望你在做什麼你的工作 –
我只是想通過POST請求JSON數據,但它說400錯誤。我的代碼中有任何錯誤嗎? –
不知道你的API期望什麼,我們不能幫助。請包括一個成功的請求在你的問題,即使它不是從迅速(即郵遞員請求,捲曲請求等)。 –