Ho un indirizzo di pagina Web che contiene un file JSON. Sto cercando di accedere al file JSON come NSDictionary in Swift 2. Ogni volta che chiamo NSData(contentsOfURL:url!)
dove url
è il tipo di NSURL?
, restituisce nil
. Utilizzo Xcode 7 Beta e il progetto è stato realizzato per la prima volta in Xcode 6.Swift 2: NSData (contentsOfURL: url) restituendo nil
Il seguente codice causa il problema.
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.
Ciò che mi confonde è che quando provo la stessa cosa quando si digita lo stesso codice in Terminal utilizzando swift
, la costante data
non è impostato a zero. Ho provato a riavviare il Mac e non ha funzionato. Ho provato a reinstallare Xcode e non ha funzionato.
Questo è ciò che accade quando si digita il codice seguente sul terminale, utilizzando la parola chiave 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..........>)
Quando provo nel terminale, ha funzionato sicuramente. Qualcuno può aiutarmi a risolvere il problema ??
Si sta eseguendo in modalità sandbox quando non viene eseguito da 'swift'? – Aderstedt