Php 将图像上载到web服务-初学者
我必须上传通过摄像头拍摄的图像或通过Php 将图像上载到web服务-初学者,php,iphone,objective-c,cocoa-touch,asihttprequest,Php,Iphone,Objective C,Cocoa Touch,Asihttprequest,我必须上传通过摄像头拍摄的图像或通过uiimagepickerview上传的图像。我正在使用AsittpRequest ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url]; [request setFile:@"/Users/ben/Desktop/ben.jpg" forKey:@"photo"]; 1.)由于我是从iPhone摄像头拍摄照片或从uiimagepickerview上传照片,我需要知道我应
uiimagepickerview
上传的图像。我正在使用AsittpRequest
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
[request setFile:@"/Users/ben/Desktop/ben.jpg" forKey:@"photo"];
1.)由于我是从iPhone摄像头拍摄照片或从uiimagepickerview
上传照片,我需要知道我应该为setFile
(替换文本为@)/Users/ben/Desktop/ben.jpg“
)设置什么值
2.)我还需要测试这个应用程序,那么是否有人知道相应的PHP代码,我可以在其中显示拍摄的图像(在web浏览器上)。教程或示例代码您应该将图像作为图像数据添加到请求正文中
要获得第一个问题的答案,请查看以下代码片段:
#import <MobileCoreServices/MobileCoreServices.h>
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
BOOL isImage = ([[info objectForKey:UIImagePickerControllerMediaType] isEqualToString:kUTTypeImage]);
if (isImage) {
self.request = [ASIFormDataRequest requestWithURL:url];
UIImage *originalImage = [info objectForKey:UIImagePickerControllerOriginalImage];
NSData *imageData = UIImageJPEGRepresentation(originalImage, 0.7);
[self.request setData:imageData
withFileName:@"photo.jpg"
andContentType:@"image/jpeg"
forKey:@"photo"];
[self.request start];
}
}
若您的对象被解除分配,它将允许您停止请求或至少将其委托设置为nil,只需实现
- (void) dealloc {
[self.request cancel];
self.request.delegate = nil;
[request release];
[super dealloc];
}
谢谢你的回复。在
UIImageJPEG表示法(原始图像,0.7)
中,什么是0.7
?我在代码中使用了ARC。你知道相应的PHP代码吗?我可以在那里测试它是否工作?没问题。您可以检查0.7是JPEG压缩质量。此参数的值范围为[0.0;1.0]。根据“值0.0表示最大压缩(或最低质量),而值1.0表示最小压缩(或最佳质量)。”您知道要使用PHP,您必须使用PHP模块等设置web服务器。我认为最好使用一些带有自己API的图像宿主进行检查。为什么要添加#import
?哪种方法使用它?kUTTypeImage需要它。
- (void) dealloc {
[self.request cancel];
self.request.delegate = nil;
[request release];
[super dealloc];
}