Alamofire POST 路由返回数据

Posted

技术标签:

【中文标题】Alamofire POST 路由返回数据【英文标题】:Alamofire POST route returning data 【发布时间】:2015-10-06 16:21:22 【问题描述】:

所以我试图在我的 iPhone 应用程序上发布到我的 API。当我发布时,我希望能够返回一个包含数据的结构。我该怎么做?到目前为止我有

    Alamofire.request(.POST, "API_URL", parameters)

有没有办法存储 API 返回的内容?

【问题讨论】:

你真的应该阅读README。您的所有问题都有详细的代码示例和解释。只需确保您正在查看与您正在使用的 Alamofire 版本相匹配的 README 版本。 【参考方案1】:

试试这个

Alamofire.request(.POST, "API_URL, parameters).responseJSON request, response, result in

print(result.value)

如果您想以简单的方式使用生成的 JSON - 我建议使用 SWIFTY JSON

【讨论】:

谢谢!我将如何从结果中提取数据?例如,如果我让 API 返回两个字符串。【参考方案2】:

可以。如果您使用的是最新版本的 Alamofire。

试试这个(如果返回的数据是 JSON)

let url1 = "http://yoururl.com"
let head = [ "Accept": "application/json;charset=UTF-8",
        "Content-Type": "application/json;charset=UTF-8"] // Adding headers
let p = ["Email":"anything","Password": "123"] // Adding parameters if any

Alamofire.request(.POST,url1, parameters: p, encoding : .JSON, headers : head)
.responseJSON  response in
            print(response.request)  // original URL request
            print(response.response) // URL response
            print(response.data)     // server data
            print(response.result)   // result of response serialization


【讨论】:

谢谢!那么我将如何从 response.data 中获取数据?例如,如果 JSON 对象有 2 个我想打印出来的字符串。还有 response.request/response/data/result 和没有响应的有什么区别 发布您收到的 json 响应 我的 json 响应是 "success" : true "message" : some string "token" : 一个长字符串。 ~~~~~ 我尽量不使用 SWIFTY,因为我的 JSON 数据很简单。 发布完整的 json 响应 粘贴上面的代码就可以看出区别了。

以上是关于Alamofire POST 路由返回数据的主要内容,如果未能解决你的问题,请参考以下文章

带有嵌套参数的 Alamofire POST 请求不返回任何内容

使用 Alamofire 调用 JSONArray

使用 Alamofire 返回解析的 JSON 数据?

如何编写返回响应的alamofire请求函数?

UIView 在使用 SwiftyJSON 和 Alamofire 从 API 返回的数据之前被渲染

Swift ios alamofire 数据在 viewDidLoad 中第一次返回空