我試圖解析託管在我的Google雲端硬盤上的json文件。我正在使用以下代碼:未解析託管在Google雲端硬盤上的JSON
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
NSURL* url = [NSURL URLWithString:@"https://docs.google.com/file/d/0B3CRs9y562F3a0VXTXNaekNiSXM/edit?usp=sharing"];
NSURLRequest* request = [NSURLRequest requestWithURL:url];
[NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse *response, NSData *data, NSError *error) {
if (!error) {
NSDictionary* jsonDictionary = [NSJSONSerialization JSONObjectWithData:data options:0 error:nil];
NSLog(@"jsonDictionary \n%@", jsonDictionary);
}
}];
}
我檢查了網址,並將其指定爲代碼或Google雲端硬盤無法訪問。如果代碼不好,我看不到它在哪裏。如果無法從Google雲端硬盤解析.json文件,我可以在哪裏主持有權訪問此內容?它必須在我自己的領域?我期待在Google Code上託管,但絕對看起來並不像我需要的版本控制,等等。
說真的,這是:「我試圖解析託管在我的Google雲端硬盤上的json文件。」根本沒有意義。你如何處理HTTP GET請求是從服務器獲取數據。您可以在「Accept」標題中指定您希望的數據類型,例如「接受:application/json」。首先,最重要的是,您需要確保API完全支持該請求。收到響應時,請檢查狀態碼和響應標題(如果它們與您的期望相符)(狀態碼200 OK和「Content-Type:application/json」)。然後你可以用任何你想要的方式處理數據。 – CouchDeveloper
@CD,你絕對正確。無法訪問.json,並且無法在GD中解析.txt。創建一個簡單的API花費的時間比花費這些規則不適用的時間長。 – aug2uag
當然,如果該資源只是「文本」(與某些結構化數據相對),並且實際上是包含JSON的文本文檔,則可以指定「Accept:text/plain; charset = utf-8」。 「application/json」用於某個資源,例如某些數據庫中存在「Model」。如果您請求「application/json」,您將有效地指示服務器創建代表此模型的JSON文檔並將其傳遞給您。 – CouchDeveloper