0

我在尝试将文件发送NSURLSessionUploadTask到自定义 REST 服务时遇到问题。问题是文件似乎被传输到任意大小,然后任务停止而没有任何错误(URLSession:task:didCompleteWithError:被调用error设置为nil)。

需要传输的文件大小接近 10MB,我发现较小的文件有时可以正确传输。

我用于创建任务的代码如下:

NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
[request setURL:url];
[request setValue:@"application/json; charset=utf-8" forHTTPHeaderField:@"Content-Type"];
[request setValue:@"100-continue" forHTTPHeaderField:@"Expect"];
[request setHTTPMethod:@"POST"];
[request setValue:[NSString stringWithFormat:@"%d", length] forHTTPHeaderField:@"Content-Length"];

NSURL *fileUrl = [NSURL fileURLWithPath:instanceFilePath];

NSURLSessionUploadTask *uploadTask = [self.session uploadTaskWithRequest:request fromFile:fileUrl];

我需要为服务器指定一些标头以正确解释请求,length变量是正在发送的文件的有效大小。

知道这里发生了什么吗?

谢谢。

4

0 回答 0