我的伙伴和我正在开发一个iOS项目,我们在这个问题上有所了解。
我们正在努力为我们的API制作一个@IBAction func accept(_ sender: Any) {
var comm,cat,dist : String!
comm = observationstwee.text!
print(comm)
let catd = 7
cat = String(catd)
print(cat)
dist = distancetwee.text!
print(dist)
let parameters: Parameters = [
"comment":comm,
"category":cat,
"distance":dist,
"timestamp":time
]
let headers: HTTPHeaders = ["Authorization": "Token \(token!)"]
print(headers.debugDescription)
Alamofire.request("https://llegoelbigotes.ubiqme.es/api/new-travel",parameters: parameters, headers: headers).responseJSON {response in switch(response.result) {
case .success(_):
print(response)
print("Correct Travel")
//changeViewController(storyboard_name: "Main", viewcontroller_name: "tabBarController", context: self)
break
case .failure(_):
print("FAILURE")
}
}
}
,但我们得到的只是一个成功的代码,但有一个类型的响应:
成功:{detail ="未提供身份验证凭据。&#34 ;; }
这是我们的代码:
Alamofire.request("https://llegoelbigotes.ubiqme.es/api/new-travel",method:.post,parameters: parameters,headers:headers, encoding: JSONEncoding.default).validate().responseJSON

与此通话一样:
{{1}}
我们得到了这个:
"额外参数'方法'在电话"
非常感谢您的帮助,我们正在使用Alamofire 4.5和iOS 11.2
答案 0 :(得分:0)
当其中一个参数不正确时会发生这种类型的错误,在您的示例中这可能是“headers”参数,请尝试:
<a href="#" id="about-button" data-target="about-container">About</a>
并检查Alamofire migration guide,您可以使用RequestAdapter协议。
答案 1 :(得分:0)
当你使用post方法,所以你需要提供方法类型到请求参数代码应该像那样
request("https://llegoelbigotes.ubiqme.es/api/new-travel", method:
.post, parameters: parameters, encoding: JSONEncoding.default, headers:
headers).responseJSON(completionHandler:{ responseObject in
})