- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
func retrieveData(englishWord : String, completionHandler : (success: Bool, data : [String : AnyObject]?, errorString : String?) -> Void) {
let baseURL = "https://api.pearson.com/v2/dictionaries/ldoce5/entries?headword=vodka"
let urlString = baseURL
print(urlString)
let url = NSURL(string: urlString)
let request = NSMutableURLRequest(URL: url!)
let session = NSURLSession.sharedSession()
let task = session.dataTaskWithRequest(request) { data, response, error in
if error != nil {
completionHandler(success: false, data: nil, errorString: "There was a networking error")
return
}
if data == nil {
completionHandler(success: false, data: nil, errorString: "There was an error in the request for data")
return
}
let parsedResult : AnyObject?
do {
parsedResult = try NSJSONSerialization.JSONObjectWithData(data!, options: .AllowFragments) as! [String : AnyObject]
print(parsedResult!)
} catch {
completionHandler(success: false, data: nil, errorString: "There was an error in the conversion for data")
return
}
}
task.resume()
}
现在 print(parsedResult!)
给出:
{ count = 1; limit = 10; offset = 0; results = ( { datasets = ( ldoce5, dictionary ); headword = vodka; id = cqAG3cXCxZ; "part_of_speech" = noun; pronunciations = ( { audio = ( { lang = "British English"; type = pronunciation; url = "/v2/dictionaries/assets/ldoce/gb_pron/vodka0205.mp3"; } ); ipa = "\U02c8v\U0252dk\U0259"; }, { audio = ( { lang = "American English"; type = pronunciation; url = "/v2/dictionaries/assets/ldoce/us_pron/vodka.mp3"; } ); ipa = "\U02c8v\U0251\U02d0dk\U0259"; lang = "American English"; } ); senses = ( { definition = ( "a strong clear alcoholic drink originally from Russia, or a glass of this" ); } ); url = "/v2/dictionaries/entries/cqAG3cXCxZ"; } ); status = 200; total = 1; url = "/v2/dictionaries/ldoce5/entries?headword=vodka"; }
但是查询URL:Here
为了方便起见,我将其发布在这里:
{"status":200,"offset":0,"limit":10,"count":1,"total":1,"url":"/v2/dictionaries/ldoce5/entries?headword=vodka","results":[{"datasets":["ldoce5","dictionary"],"headword":"vodka","id":"cqAG3cXCxZ","part_of_speech":"noun","pronunciations":[{"audio":[{"lang":"British English","type":"pronunciation","url":"/v2/dictionaries/assets/ldoce/gb_pron/vodka0205.mp3"}],"ipa":"ˈvɒdkə"},{"audio":[{"lang":"American English","type":"pronunciation","url":"/v2/dictionaries/assets/ldoce/us_pron/vodka.mp3"}],"ipa":"ˈvɑːdkə","lang":"American English"}],"senses":[{"definition":["a strong clear alcoholic drink originally from Russia, or a glass of this"]}],"url":"/v2/dictionaries/entries/cqAG3cXCxZ"}]}
NSJSONSerialization
更改我的数据是否有原因,因为打印出的数据与 Pearson API 返回的数据明显不同?
最佳答案
我不相信它实际上改变了值(value)观,我相信你只是在看一种不同的表现形式。 (如果 Swift 的行为类似于 Objective-C),print(x) 将调用 x 上的“描述”方法,它可以以任何它喜欢的格式输出对象。
您可能想要做的是使用以下方法重新编码数据:dataWithJSONObject:options:error(与您所做的基本上相反的调用),并查看表示是什么。
关于ios - NSJSONSerialization.JSONObjectWithData 改变返回结果的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34668557/
我正在使用NSJSONSerialization将json字符串转换为NSDictionaray JSON字符串是 {"bid":88.667,"ask":88.704} 在NSJSONSeriali
我正在使用 iOS 5 新功能来解析 JSON,但我不知道为什么我没有得到任何键值对。 “aStr”(数据的字符串表示形式)将正确的 JSON 放在输出窗口上,但我在“dicData”中什么也没有得到
我正在尝试将 JSON 文件解析为 NSArray,对于正数来说一切都很好。然而,该 JSON 文件中的所有负整数都会生成高数字,例如“[11] __NSCFNumber * (long)720575
我有一个NSJSONSerialization JSONObjectWithData,我在其中传递了NSData对象。结果,我得到一个NSString而不是NSDictionary。我的完整行是: N
在以下用于解析JSON的代码中,当对象碰巧不是NSArray或NSDictionary时,将使用NSJSONReadingAllowFragments。 下面的代码可以正常工作并输出32。但是如果将3
好的,我正在使用以下代码获取 JSON 文件 - (void)dataRequest { NSURL *dataURL = [NSURL URLWithString:@"link to JSO
我有一些看起来像这样的代码: NSDictionary* json = [NSJSONSerialization JSONObjectWithData:data
我在尝试从 URL 解析 JSON 时遇到错误。 代码如下: override func viewDidLoad() { super.viewDidLoad()
我在 AppDelegate.m 中有这段代码: NSError *error; NSString *filePath = [[NSBundle mainBundle] pathFor
这个问题在这里已经有了答案: NSJSONSerialization and Emoji (2 个答案) 关闭 6 年前。
我正在使用 JSON 来填充带有标记的 mapView。 在方法 -(void)connectionDidFinishLoading:(NSURLConnection *)connection 编译器
我在使用 NSJSONSerialization 创建 NSString 的 NSDictionary 表示(JSON 字符串)时遇到了一些问题。我以前使用过 JSONKit,但由于它在 iOS9 中
请原谅我可能犯的错误,我第一次问这个问题。 阅读本网站上的几个主题后,like this one首先我会尝试使用 describe 方法,但它仍然不起作用@all :-( 我的 .json 文件看起来
我的 iPad 应用程序需要解析一个 10 MB 的 JSON 文件并将其内容保存在 Core Data 中。 考虑到大文件大小和内存使用,您会推荐使用 NSJSONSerialization 还是您
我有一个看起来像这样的字符串:(它派生自一个格式略有错误的解码数据对象,我通过控制台修复并验证了这个输出) {"home":{"breakfast":{"protein":"55","carbs":"
我已经在几个项目中使用过它... [NSJSONSerialization dataWithJSONObject:someObject options:0 error:nil] 但我不知道如何指定无选
我有一本字典,当我登录时它会显示... { Date = "2013-04-30 17:17:18 +0000"; Description = Kb; EventID = "9
在我的 iOS 应用程序中,我在后台线程中做一些工作(使用 performSelectorInBackground)。在此线程中,我使用 NSJSONSerialization 及其类方法来解析 JS
我正在使用 NSJSONSerializer 来解析一些 json 格式的数据。数据包含一些“ü”和“ö”等。我发现它确实返回 nil,如果没有事先使用 NSASCIIStringEncoding 将
我在使用 NSJSONSerialization 从 Met Office Datapoint API 读取 JSON 时遇到问题。 出现以下错误 Error Domain=NSCocoaErrorD
我是一名优秀的程序员,十分优秀!