zoukankan      html  css  js  c++  java
  • iosupload file with formdata onsumed web api 代码片段

    代码 -

    - (IBAction)uploadAction:(id)sender {
        NSString *urlstring=self.urlTextField.text;
        //NSString *poststr=@"";
        NSData *imgData=UIImageJPEGRepresentation(self.previewImageView.image, 0.9f);
        
        NSString *boundary = @"0xKhTmLbOuNdArY";  
        NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; boundary=%@", boundary, nil];
        
        NSURL *url=[NSURL URLWithString:urlstring];
        NSMutableURLRequest *request=[NSMutableURLRequest requestWithURL:url];
        [request addValue:contentType forHTTPHeaderField:@"Content-Type"];
     
        [request setHTTPMethod:@"POST"];
        NSMutableData *body = [NSMutableData data];
        NSArray *_params=@[@"submitter",@"username"];
        //add submit formdata
        for (NSString *param in _params) {
            [body appendData:[[NSString stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
            [body appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"%@\"\r\n\r\n", param] dataUsingEncoding:NSUTF8StringEncoding]];
            [body appendData:[[NSString stringWithFormat:@"%@\r\n", param] dataUsingEncoding:NSUTF8StringEncoding]];
        }
        
        
        
        [body appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
        [body appendData:[@"Content-Disposition: form-data; name=\"userfile\"; filename=\"iphonefile.jpg\"\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
        [body appendData:[@"Content-Type: application/octet-stream\r\n\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
        //[body appendData:[@"submitter: fromiphone" dataUsingEncoding:NSUTF8StringEncoding]];
        
        [body appendData:[NSData dataWithData:imgData]];
        [body appendData:[[NSString stringWithFormat:@"\r\n--%@--\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
        
        [request setHTTPBody:body];
        NSOperationQueue *queue=[[NSOperationQueue alloc] init];
        [NSURLConnection sendAsynchronousRequest:request queue:queue
                               completionHandler:^(NSURLResponse *respone,
                                                   NSData *data,
                                                   NSError *error)
         {
             if ([data length]>0 && error==nil) {
                 NSString *jsonstring=[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
                 //[self.respondTextView setText:jsonstring];
                 NSLog(@"data:%@",jsonstring);
                 //[self performSelectorOnMainThread:@selector(setRespondtext:)withObject:jsonstring waitUntilDone:YES modes:nil];
                 
    //[self performSelectorOnMainThread:@selector(setRespondtext:) withObject:data waitUntilDone:NO];
             }  
         }
         ];    

  • 相关阅读:
    zeromq和czmq编译
    Future Pattern
    国外程序员是如何准备面试的
    附加数据库后,给所有者赋权
    利用FastCopy迁移应用数据
    持续集成之“Everything is code”
    利用SQLyog实现mysql自动备份
    LinkedIn已将可自定义的索引引擎IndexTank开源
    Hillstone安全网关相关问题收集
    Install Toad for Oracle 10.6 on Winows 7 X64
  • 原文地址:https://www.cnblogs.com/neozhu/p/2790455.html
Copyright © 2011-2022 走看看