iOS8 上的 Instagram
Posted
技术标签:
【中文标题】iOS8 上的 Instagram【英文标题】:Instagram on iOS8 【发布时间】:2016-04-03 11:51:25 【问题描述】:我想在 ios 应用上显示我的 Instagram。我在本教程中使用了用于 JSON 的 Alamofire 和 Swifty 库http://myxcode.net/2015/07/12/getting-data-from-instagram-account/
但是我在这一行中遇到了错误:
Alamofire.request(.GET, url).responseJSON (request, response, json, error) in
说“Void 需要 1 个参数,但在闭包体中使用了 4 个”。
但是如果我使用
Alamofire.request(.GET, url)
.responseJSON response in
print(response)
它会正确打印结果。
如果我使用
Alamofire.request(.GET, url)
.responseJSON response in
let data = response["data"].arrayValue as [JSON]?
我从https://github.com/Alamofire/Alamofire 得到的 我收到错误“类型'响应'没有下标成员”
我该如何使用它?
【问题讨论】:
可以使用response.data
获取服务器返回的原始数据。您可以使用JSON(data: data)
来获取 JSON 对象。或者您可以使用response.result.value
。它已经是 [String: AnyObject]
类型的 JSON。
谢谢,成功了!
【参考方案1】:
如 Almofire GitHub 页面所述,如果您想直接获取 4 个参数,则必须使用以下命令
Alamofire.request(.GET, "https://httpbin.org/get", parameters: ["foo": "bar"])
.response request, response, data, error in
print(request)
print(response)
print(data)
print(error)
responseJSON
不能使用 4 个参数,因为它只有一个参数,正如您在示例中所写的那样
但您可以从这样的响应中获得 4 个值
Alamofire.request(.GET, "https://httpbin.org/get", parameters: ["foo": "bar"])
.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
if let JSON = response.result.value
print("JSON: \(JSON)")
你可以从响应对象中获取一切
【讨论】:
以上是关于iOS8 上的 Instagram的主要内容,如果未能解决你的问题,请参考以下文章