首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSURLErrorDomain错误-1021

NSURLErrorDomain错误-1021
EN

Stack Overflow用户
提问于 2013-04-20 14:06:58
回答 2查看 3.7K关注 0票数 1

我正在开发一个集成了dropbox的应用程序。登录是正确的,我也能够在dropBox中创建文件夹。但是当我尝试加载文件时,我得到了错误

下面的错误我得到

代码语言:javascript
复制
error making request to /1/files_put/dropbox/Info.plist - Error
Domain=NSURLErrorDomain Code=-1021 "The operation couldn’t be
completed. (NSURLErrorDomain error -1021.)" UserInfo=0x6859bc0
{destinationPath=/Info.plist,
sourcePath=/Users/bcod/Library/Application Support/iPhone
Simulator/5.0/Applications/0E1EE43C-8F6B-40FA-8696-D3992DA2DCE5/DBRoulette.app/Info.plist}

当我创建文件夹时,我没有得到这个错误。

EN

回答 2

Stack Overflow用户

发布于 2013-04-25 18:05:05

我在iPhone上使用iOS 5.0时也遇到了同样的问题,但是iPhone 6.1模拟器可以正常工作,不会产生错误消息。

我研究了DropboxSDK / DBRestClient.m,特别是uploadFile:toPath:fromPath:params的最后几行,并在DBRequest上实现了一个categorie 'ExBody‘来添加connection:needNewBodyStream方法:

代码语言:javascript
复制
#import "DBRequest+ExBody.h"

@implementation DBRequest (ExBody)

#pragma mark NSURLConnection delegate methods

- (NSInputStream *)connection:(NSURLConnection *)connection needNewBodyStream:(NSURLRequest *)req {

    NSString * sourcePath = [userInfo objectForKey:@"sourcePath"];
    NSLog(@"%@ needs newBodyStream!", sourcePath);
    return [NSInputStream inputStreamWithFileAtPath:sourcePath];
}

@end

这对我很有效。该方法是在iOS5上调用的,而不是在iOS6上!

票数 7
EN

Stack Overflow用户

发布于 2013-04-20 14:12:01

错误-1021是一个NSURLErrorRequestBodyStreamExhausted错误。

根据documentation,您缺少一个委托方法:

NSURLErrorRequestBodyStreamExhausted

需要正文流但客户端不提供时返回。这会影响iOS上的客户端,这些客户端使用正文流发送POST请求,但没有实现NSURLConnection委托方法connection:needNewBodyStream。在OS X v10.7及更高版本中可用。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16117275

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档