我试图从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开发人员帐户上的应用配置有问题吗?