如何在ios中使用ASIHTTPRequest向服务器发送和检索用户名和密码以及图像
Posted
技术标签:
【中文标题】如何在ios中使用ASIHTTPRequest向服务器发送和检索用户名和密码以及图像【英文标题】:How to send and retrieve username and password along with image to server using ASIHTTPRequest in ios 【发布时间】:2015-07-07 05:52:22 【问题描述】:我尝试使用 ASIHTTPRequest 将用户名和密码连同人物图像一起发送到服务器,我已经编写了一些代码,但它不起作用数据没有发送到服务器请一些人帮助我提供示例代码
-(void)service_Call
NSString *urlStr = [NSString URLWithString:urlstring];
NSLog(@"urlStr --->> %@",urlStr);
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:urlStr]];
[request setRequestMethod:@"POST"];
[request setPostValue:self.FnameTxt.text forKey:@"username"];
[request setPostValue:self.LnameTxt.text forKey:@"password"];
NSString *fileName = @"iphone.jpg";
// Upload an image
UIImage *img = [UIImage imageNamed:fileName];
NSData *imageData = UIImageJPEGRepresentation(img, 90);
[request setData:imageData withFileName:fileName andContentType:@"image/jpeg" forKey:@"image"];
[request setDelegate:self];
[request startAsynchronous];
[MBProgressHUD showHUDAddedTo:self.view animated:YES];
- (void)requestFinished:(ASIHTTPRequest *)request
// Use when fetching text data
NSString *responseString = [request responseString];
NSLog(@"response: %@", responseString);
// Use when fetching binary data
NSData *responseData = [request responseData];
- (void)requestFailed:(ASIHTTPRequest *)request
NSError *error = [request error];
但是数据没有发送到服务器,如果我的代码有任何错误,请帮助我
【问题讨论】:
您可能需要考虑从ASIHTTPRequest
切换。正如网站所述,它已被弃用四年......
NSData *imageData 在 NSLog 中打印并显示在这里
请用示例代码告诉我
检查:***.com/a/24509131/905517
***.com/questions/11073302/…
【参考方案1】:
你应该使用 AFNetworking 而不是 ASIHTTPRequest,你会发现它是多么的好用。
另外,通常imageData应该作为base64字符串发送,如果你通过NSData发送图像,你的服务器端如何处理它?
【讨论】:
以上是关于如何在ios中使用ASIHTTPRequest向服务器发送和检索用户名和密码以及图像的主要内容,如果未能解决你的问题,请参考以下文章
对比iOS网络组件:AFNetworking 和 ASIHTTPRequest
对比iOS网络组件:AFNetworking 和 ASIHTTPRequest
在 iOS 上从 ASIHTTPRequest 转换为 AFNetworking