2015-03-24 51 views
0

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

回答

0

奇怪的是,我的所有文件都从OneDrive中消失,再次上传后,我可以使用我在“源代码”中获得的URL访问这些文件,而不会出现任何问题。我对代码

没有做任何修改
相关问题