У меня есть адрес веб-страницы, содержащий файл JSON. Я пытаюсь получить доступ к файлу JSON как NSDictionary в Swift 2. Каждый раз, когда я вызываю NSData(contentsOfURL:url!)
, где url
является типом NSURL?
, он возвращает nil
. Я использую Xcode 7 Beta, и проект был сначала сделан в Xcode 6.
Следующий код вызывает проблему.
let url = NSURL(string:myurl) // myurl is the webpage address.
let data = NSData(contentsOfURL:url!) // the bit that returns nil
// data is set to nil
// I would perform NSJSONSerialization.JSONObjectWithData later.
Что меня смущает, так это то, что когда я пытаюсь сделать то же самое, когда я набираю тот же код в терминале с помощью swift
, константа data
не установлена в nil. Я попытался перезагрузить Mac, и это не сработало. Я попытался переустановить Xcode, и это не сработало.
Это то, что происходит, когда я ввожу следующий код в терминал, используя ключевое слово swift
.
$> swift
......
Welcome to Apple Swift version 2.0 (700.0.38.1 700.0.53). Type :help for assistance.
1> import Foundation
2> var urlstr = "http://mywebsiteaddress/jsonfile.json"
3> var nsurl = NSURL(string:urlstr)
nsurl: NSURL? = "http://mywebsiteaddress/jsonfile.json"{
ObjectiveC.NSObject = {...}
}
4> var nsdata = NSData(contentsOfURL:nsurl!)
nsdata: NSData? = 5925 bytes {
ObjectiveC.NSObject = {...}
}
5> print(nsdata)
Optional(<Some Values..........>)
Когда я пытаюсь в Терминале, это определенно сработало. Может ли кто-нибудь помочь мне решить проблему?