zoukankan      html  css  js  c++  java
  • objectc NSMutableURLRequest模拟表单提交

    NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:url]];

     
     
        [urlRequest setHTTPMethod:@"POST"];
     
        [urlRequest setValue: [NSString stringWithFormat:@"multipart/form-data; boundary=%@", BOUNDRY]
     
          forHTTPHeaderField:@"Content-Type"];
     
     
     
     
    int len=512;
     
    if(imageData !=nil){
     
    len = imageData.length + 512;
     
    }
     
    NSMutableData  * postData =[NSMutableData dataWithCapacity:len];
     
     
    [postData  appendData: [[NSString  stringWithFormat:@"--%@\r\n",BOUNDRY] dataUsingEncoding:NSUTF8StringEncoding]];
     
    [postData  appendData: [[NSString  stringWithFormat:@"Content-Disposition: form-data; name=\"%@\"\r\n\r\n",@"token" ] dataUsingEncoding:NSUTF8StringEncoding]];
     
    [postData  appendData: [[NSString  stringWithFormat:@"%@",user.token] dataUsingEncoding:NSUTF8StringEncoding]];
     
    [postData  appendData: [[NSString  stringWithFormat:@"\r\n--%@\r\n",BOUNDRY] dataUsingEncoding:NSUTF8StringEncoding]];
     
     
     
    [postData  appendData: [[NSString  stringWithFormat:@"Content-Disposition: form-data; name=\"%@\"\r\n\r\n",@"timestamp" ] dataUsingEncoding:NSUTF8StringEncoding]];
     
    [postData  appendData:[[NSString   stringWithFormat:@"%@",timestamp] dataUsingEncoding:NSUTF8StringEncoding]];
     
    [postData  appendData:[[NSString   stringWithFormat:@"\r\n--%@\r\n",BOUNDRY] dataUsingEncoding:NSUTF8StringEncoding]];
     
     
    [postData  appendData: [[NSString  stringWithFormat:@"Content-Disposition: form-data; name=\"%@\"\r\n\r\n",@"signature" ] dataUsingEncoding:NSUTF8StringEncoding]];
     
    [postData  appendData:[[NSString   stringWithFormat:@"%@",signature] dataUsingEncoding:NSUTF8StringEncoding]];
     
     
     
    if (imageData != nil ) {
     
    [postData  appendData:[[NSString   stringWithFormat:@"\r\n--%@\r\n",BOUNDRY] dataUsingEncoding:NSUTF8StringEncoding]];
     
    [postData  appendData: [[NSString  stringWithFormat:@"Content-Disposition: form-data; name=\"%@\";filename=\"temp.png\"\r\nContent-Type: image/png\r\n\r\n",@"upfile" ] dataUsingEncoding:NSUTF8StringEncoding]];
     
    [postData  appendData:imageData];
     
    }   
     
     
    [postData  appendData:[[NSString stringWithFormat:@"\r\n--%@--\r\n",BOUNDRY] dataUsingEncoding:NSUTF8StringEncoding]];
     
     
        [urlRequest setHTTPBody:postData];
        NSLog(@"%@",urlRequest); 
     
     
     
    NSData *returnData = [NSURLConnection sendSynchronousRequest:urlRequest returningResponse:nil error:nil];  
     
     
     
    NSString *returnString = [[NSString alloc] initWithData:returnData encoding:NSUTF8StringEncoding];  
    NSLog(@"%@",returnString);  
     
  • 相关阅读:
    XCode快捷键 转
    [iOS] UIView的clipsTobounds属性
    ios 重用UI部分代码的好方法(再也不用为局部变量的命名而烦恼啦!)
    symbol(s) not found for architecture armv7
    duplicate symbol _main in: / linker command failed with exit code 1
    xcode4.3.2 arc模式下导入非arc的文件 转
    objective-c block 详解 转
    将asi-http-request引入到ARC工程需要做的 转
    浅用block 转
    在Xcode4.5中禁用ARC(Automatic Referencing Counting) 转
  • 原文地址:https://www.cnblogs.com/zhwl/p/2837575.html
Copyright © 2011-2022 走看看