QNUploadOption * option = [[QNUploadOption alloc] initWithMime:@"image/png" progressHandler:nil params:nil checkCrc:NO cancellationSignal:nil];
QNUploadManager * uploadManager = [[QNUploadManager alloc] init];
NSString * documentDIR = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents"];
[uploadManager putFile:[documentDIR stringByAppendingPathComponent: photoModel.filePath] key:response.body[@"key"] token:response.body[@"uptoken"] complete:^(QNResponseInfo *info, NSString *key, NSDictionary *resp) {
NSLog(@"upload info : %@", info);
NSLog(@"upload resp : %@", resp);
} option:option];
我生成拍照文件的就是PNG图片,经由服务器获取token后,拿着去上传。【之前我也有尝试过option传nil,但也是不行】
返回值每次都是:
Printing description of info:
<QNResponseInfo= id: CA426F62-51EB-4724-BF1A-56FC8628108D, ver: 7.0.19, status: 400, requestId: sgYAAA-RI4ZvQXcU, sgYAAA-RI4ZvQXcU, xlog: UP:3/400;UP:18/400, xvia: 1.1 tietong99:2 (Cdn Cache Server V2.0), host: upload.qiniu.com ip: 222.42.4.112 duration: 0.165821 s time: 1474719350 error: Error Domain=qiniu.com Code=400 "(null)" UserInfo={error=incorrect zone, please use up-z1.qiniu.com}>
不知道哪里出错了
이 문제가 발생했습니다. 해결하셨나요? 어떻게 했어요
경로 문제입니다. 프롬프트에 따라 qiniu.com을 up-z1.qiniu.com으로 바꾸세요.
두 가지 방법
1. 프로젝트에서 qiniu.com을 검색하면 두 가지 방법이 있는데 하나는 zone0이고 하나는 zone1입니다. 내부의 qiniu.com을 up-z1.qiniu.com으로 변경합니다
2. 또는 QNConfiguration.m을 입력하면 QNConfigurationBuilder 클래스의 init 메소드에 _zone = [QNZone zone0];이라는 문장이 있는데, 이를 up-z1.qiniu.com의 zone으로 변경합니다. 바로 그거야
그렇죠<( ̄︶ ̄)>
ps: 개인적으로는 2번 방법을 추천합니다