Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cocoa touch ASIFormDataRequest ASIMultipartFormDataPostFormat标头格式_Cocoa Touch_Http_Http Headers_Multipartform Data_Asiformdatarequest - Fatal编程技术网

Cocoa touch ASIFormDataRequest ASIMultipartFormDataPostFormat标头格式

Cocoa touch ASIFormDataRequest ASIMultipartFormDataPostFormat标头格式,cocoa-touch,http,http-headers,multipartform-data,asiformdatarequest,Cocoa Touch,Http,Http Headers,Multipartform Data,Asiformdatarequest,我对多部分消息的标题格式有问题。如何为一个零件创建具有多个值的标题 我想要的是: --0xKhTmLbOuNdArY-28217FDC-8163-459B-AB09-3DE87210721D OBR_SORT_IDX:1 OBR_ENUM:1 Content-Disposition: form-data; name="IMAGE"; filename="image1_0.png" Content-Type: image/png <theBinData> 因此,我编辑了ASIFor

我对多部分消息的标题格式有问题。如何为一个零件创建具有多个值的标题

我想要的是:

--0xKhTmLbOuNdArY-28217FDC-8163-459B-AB09-3DE87210721D
OBR_SORT_IDX:1
OBR_ENUM:1
Content-Disposition: form-data; name="IMAGE"; filename="image1_0.png"
Content-Type: image/png

<theBinData>

因此,我编辑了
ASIFormDataRequest
的方法
-(void)buildMultipartFormDataPostBody
。我为multipart头添加了带有字典的新数组

fileData
的for循环中的
buildMultipartFormDataPostBody
代码:

NSDictionary *d = [self headerMultyPartData][i];
NSArray *keys = d.allKeys;
for(NSString *key in keys)
    [self appendPostString:[NSString stringWithFormat:@"%@: %@\r\n", key, [d valueForKey:key]]];
UIImage *img1 = [UIImage imageNamed:@"alu_texture.png"];
UIImage *img2 = [UIImage imageNamed:@"alu_texture.png"];

ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:strUrl]];
[request setPostBodyFilePath:thePath];
request.shouldStreamPostDataFromDisk = YES;

[request setPostFormat:ASIMultipartFormDataPostFormat];
[request setRequestMethod:@"POST"];

NSString *imgName = [NSString stringWithFormat:@"image%d_%d.png", 1, 0];
NSData *data = [NSData dataWithData: UIImagePNGRepresentation(img1)];
[request addPostValue:@"1" forKey:@"OBR_ENUM"];
[request addPostValue:@"0" forKey:@"OBR_SORT_IDX"];
[request addData:data withFileName:imgName andContentType:@"image/png" forKey:@"IMAGE"];

imgName = [NSString stringWithFormat:@"image%d_%d.png", 1, 1];
data = [NSData dataWithData: UIImagePNGRepresentation(img2)];
[request addPostValue:@"1" forKey:@"OBR_ENUM"];
[request addPostValue:@"1" forKey:@"OBR_SORT_IDX"];
[request addData:data withFileName:imgName andContentType:@"image/png" forKey:@"IMAGE"];

[request setDelegate:self];
[request startAsynchronous]
NSDictionary *d = [self headerMultyPartData][i];
NSArray *keys = d.allKeys;
for(NSString *key in keys)
    [self appendPostString:[NSString stringWithFormat:@"%@: %@\r\n", key, [d valueForKey:key]]];