如何在使用 Alamofire 的 POST 网络调用中仅发送字符串值作为参数?
Posted
技术标签:
【中文标题】如何在使用 Alamofire 的 POST 网络调用中仅发送字符串值作为参数?【英文标题】:How can I send only a string value as the parameter in a POST network call using Alamofire? 【发布时间】:2017-02-15 11:40:44 【问题描述】:所以让我们说,而不是这个,
let parameters: [String: Any] = [
"settings":
[
"username" : UILabel.text,
"password": textField.text,
],
]
Alamofire.request("myURL", method: .post, parameters: parameter, encoding:)
.responseJSON response in
print(response)
我想知道我是否可以像这样只发送一个字符串作为参数,
let parameter: String
parameter = "SampleString"
Alamofire.request("myURL", method: .post, parameters: parameter).responseJSON response in
print(response)
【问题讨论】:
字符串本身不能用作参数。它应该具有键值。为什么要发送单个字符串? 例如如果我在ios中使用内置网络, var request = URLRequest(url: URL(string: "example.com")!) request.httpMethod = "POST" let postString = parameter 怎么做使用 Alamofire 也一样? 在那个例子中你根本不发送任何参数。在 alamofire 中发送参数:nil 就是这样。 【参考方案1】:试试这个
var params = "\"username\": \"\(UILabel.text)\""
Alamofire.request(url, method:.post, parameters:[params]).responseJSON response in
debugPrint(response)
【讨论】:
【参考方案2】:我认为你的参数总是需要是字典类型,这样你就有一个键值对。
如果你只想拥有一把钥匙,你可以这样做:
let parameter = ["parameterName": parameterValue]
希望有帮助!
【讨论】:
以上是关于如何在使用 Alamofire 的 POST 网络调用中仅发送字符串值作为参数?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Alamofire 4.0 中仅使用参数和正文在 swift 中使用 POST 方法发送请求?
如何在 Swift 3 中使用 Alamofire 在 POST 请求中将给定的 JSON 作为参数发送?