2012-12-27 82 views
-1

在我的项目的图像: -如何发布到Web服务

1)点击从相机拍摄照片(不要保存)。

2)显示裁剪图像,2个按钮,并发布后cancel.where按钮后的图像和取消按钮放弃image.it看起来是这样的。 2nd

我不知道如何发布相机捕获图像。我通过互联网搜索发现了很多代码,但没有找到任何代码可以帮助我。

我想这些链接给代码..

FirstSecondThird,等等。

我希望有人会help..how张贴?谢谢。

-(IBAction)sendRequest:(id)sender { 

    #define DataDownloaderRunMode @"myapp.run_mode" 

     NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url 
             cachePolicy:NSURLRequestUseProtocolCachePolicy 
             timeoutInterval:60]; 

     [request setHTTPMethod:@"POST"]; 

     NSString *boundary = @"----WebKitFormBoundarycC4YiaUFwM44F6rT"; 

     NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; boundary=%@",boundary]; 

     [request addValue:contentType forHTTPHeaderField: @"Content-Type"]; 

     NSMutableData *body = [NSMutableData data]; 

     [body appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n",boundary] dataUsingEncoding:NSUTF8StringEncoding]]; 

     [body appendData:[[NSString stringWithString:@"Content-Disposition: form-data; name="attachment[file]"; 
     filename="picture.png"\r\n"] dataUsingEncoding:NSUTF8StringEncoding]]; 

     [body appendData:[[NSString stringWithString:@"Content-Type: image/png\r\n\r\n"] dataUsingEncoding:NSUTF8StringEncoding]]; 

     [body appendData:[NSData dataWithData:imageData]]; 

     [body appendData:[[NSString stringWithFormat:@"\r\n--%@--\r\n",boundary] dataUsingEncoding:NSUTF8StringEncoding]]; 

     [request setHTTPBody:body]; 

     NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:request 
                   delegate:self 
                   startImmediately:NO]; 

     [connection scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:DataDownloaderRunMode]; 

     [connection start]; 
} 

和连接此张贴..按钮

+2

是第一个链接不正是你想要的东西,如果你有,你应该具体问题发布您的代码和任何错误 – wattson12

+0

@ wattson12 TNX ... – Shivaay

+0

@ wattson12当我使用第一个链接的代码,它显示的错误在这条线...... [机构appendData:[NSST ring stringWithString:@“Content-Disposition:form-data; NAME = “附件[文件]”;filename =“picture.png”\ r \ n“] dataUsingEncoding:NSUTF8StringEncoding]]; – Shivaay

回答

3

UPDATE:

[body appendData:[[NSString stringWithString:@"Content-Disposition: form-data; name=\"picture\"; filename=\"picture.png\"\r\n"] dataUsingEncoding:NSUTF8StringEncoding]]; 

这里您的存储数据库字段名的图像picture然后name参数写的字段名称。 ..

使用此代码...

+0

它仍然给错误... – Shivaay

+0

你得到哪个错误和你写代码花花公子? –

+0

什么是我刚刚复制并粘贴的链接...错误执行',' – Shivaay

2
// add image data 
NSData *imageData = UIImageJPEGRepresentation(imageToPost, 1.0); 
if (imageData) { 
    [body appendData:[[NSString stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]]; 
    [body appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"%@\"; filename=\"image.jpg\"\r\n", FileParamConstant] dataUsingEncoding:NSUTF8StringEncoding]]; 
    [body appendData:[[NSString stringWithString:@"Content-Type: image/jpeg\r\n\r\n"] dataUsingEncoding:NSUTF8StringEncoding]]; 
    [body appendData:imageData]; 
    [body appendData:[[NSString stringWithFormat:@"\r\n"] dataUsingEncoding:NSUTF8StringEncoding]]; 
} 

关注这个答案Link

或者你可以使用ASIHTTP类此

ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:@"http://URL/Service.asmx/RegisterClient?"]]; 
      request.delegate=self; 

      encodedImage = UIImagePNGRepresentation(imgRef); 

      [[NSUserDefaults standardUserDefaults]setObject:UIImagePNGRepresentation(imgRef) forKey:@"userImage"]; 

      str =[Base64 encode:encodedImage]; 

      [request setPostValue:email.text forKey:@"Email"]; 

      [request setPostValue:name.text forKey:@"FName"]; 
      [request setPostValue:str forKey:@"UserImage"]; 
      [request setPostValue:dob.text forKey:@"dob"]; 
      [request setPostValue:phoneNumber.text forKey:@"Phone"]; 
      [request setPostValue:ggg.text forKey:@"Gender"]; 
      [request setPostValue:address.text forKey:@"Address"]; 
      [request setPostValue:interest.text forKey:@"Interest"]; 

      [request startAsynchronous]; 

ASIHTTPRequest documentation

+1

tnx伙计..但我试过这个链接也... nt越来越.. – Shivaay

+0

你有什么问题? – Rajneesh071