我試圖從REST API獲取OneDrive上文件存儲的內容。 我使用iOS SDK訪問我的文件列表(https://github.com/liveservices/LiveSDK-for-iOS)。 我從我想要下載的對象中獲取所有信息。所以我認爲所有的登錄過程都可以,我可以從當前會話中獲取accessToken。無法使用「源」或Rest API url(404錯誤)從OneDrive下載文件
這是我的會話範圍:
scopes = [NSArray arrayWithObjects:
@"wl.signin",
@"wl.basic",
@"wl.skydrive",
@"wl.offline_access", nil];
我有 「wl.skydrive」,這是一個 「preresquisite」。
,從我要下載我得到這個信息的文件:https://msdn.microsoft.com/en-us/library/dn631831.aspx
的文件說,「源」對象包含一個臨時URL,我可以下載該文件。但是,我嘗試從源URL獲取,但我收到一個404 http響應(我的URL看起來非常類似於示例URL,所以應該沒問題)。
這裏是響應
url called: https://cr2vng.bn1302.livefilestore.com/y2mOPOvT5FDRrIRdKbCS3xtwQH9zz2gzzYPxLHIcOpHSo6bKP3QqJpGpL1U9c76a_QCwFwEPyTEbF2CVU63tb92bOkQ9ahcxAOhSBPws21K7DL5TnNe3AmbHThv4zlbohKiB8x6JO9gE2gjUcOUImPImA/01%20-%File%Name.mp3?psid=1
2015-03-24 21:55:20.339[1435:149631] response: <NSHTTPURLResponse: 0x7ff36af04ed0> { URL: https://cr2vng.bn1302.livefilestore.com/y2mOPOvT5FDRrIRdKbCS3xtwQH9zz2gzzYPxLHIcOpHSo6bKP3QqJpGpL1U9c76a_QCwFwEPyTEbF2CVU63tb92bOkQ9ahcxAOhSBPws21K7DL5TnNe3AmbHThv4zlbohKiB8x6JO9gE2gjUcOUImPImA/01%20-%File%Name.mp3?psid=1 } { status code: 404, headers {
"Accept-Ranges" = bytes;
"Content-Encoding" = gzip;
"Content-Length" = 0;
Date = "Tue, 24 Mar 2015 20:55:19 GMT";
P3P = "CP=\"BUS CUR CONo FIN IVDo ONL OUR PHY SAMo TELo\"";
Server = "Microsoft-HTTPAPI/2.0";
"X-AsmVersion" = "UNKNOWN; 19.16.0.0";
"X-ClientErrorCode" = ItemDoesNotExist;
"X-MSNSERVER" = "BN1302____PAP221";
"X-QosStats" = "{\"ApiId\":0,\"ResultType\":2,\"SourcePropertyId\":0,\"TargetPropertyId\":42}";
"X-ThrowSite" = "4359.b800";
} }
我也試圖做使用REST API(https://msdn.microsoft.com/EN-US/library/office/dn659726.aspx#Download_a_file)具有相同的結果相同的請求。使用這個API調用,我終於得到了一個重定向到一個類似的URL,我得到了「源」對象。
在這兩種情況下,404都沒有意義,因爲我正準備從存在的對象獲取「id」。
我的OneDrive開發人員帳戶上的應用配置有問題嗎?