gpt4 book ai didi

ios - 读取 API 响应中的数据 | iOS

转载 作者:行者123 更新时间:2023-11-28 21:12:17 24 4
gpt4 key购买 nike

我正在尝试将登录 API 集成到我的 iOS 项目中。当我在浏览器中点击该 API 时,它会给我正确的 JSON 响应。然而,当我在我的应用程序中调用它时,我无法读取 JSON。代码如下:

let url = NSURL(string: "myURL")
let request = NSURLRequest(URL: url!)
let session = NSURLSession.sharedSession()
let task = session.dataTaskWithRequest(request) { (data, response, error) -> Void in

if error != nil {
print (error)
}
do {
//jsonDict is always nil
if let jsonDict = try self.jsonFromData(data!) {
print (jsonDict)
}
}
catch {
print ("hi")
}
}

jsonFromData 为:

private func jsonFromData(jsonData: NSData) throws -> [NSDictionary]?
{
var jsonDict: [NSDictionary]? = nil
do
{
jsonDict = try NSJSONSerialization.JSONObjectWithData(jsonData, options: NSJSONReadingOptions.AllowFragments) as? [NSDictionary]
}
catch
{
throw(error)
}

return jsonDict
}

API 在浏览器中的响应如下:

enter image description here

请帮助我,我做错了什么。谢谢。

更新:我刚刚检查过如果我将数据转换为字符串,它会给出正确的值。即

let string = NSString(data: jsonData, encoding: NSASCIIStringEncoding)
print (string)
//OUTPUT: Optional({"Authenticated":true,"CustomerID":000,"CustomerName":"TEMP","Members":[{"MemberID":000,"MemberNumber":"000","MembershipID":00,"MembershipExpiration":"\/Date(1517464799000-0600)\/","ValidBuyerTypes":[0]}]})

最佳答案

看看你解码 JSON 和 as 的代码?陈述。您正在尝试获取 NSDictionary 数组。您打印的 JSON 包含一个字典,而不是一个数组。

关于ios - 读取 API 响应中的数据 | iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42586373/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com