gpt4 book ai didi

ios - AFNetworking 3.0上传图片

转载 作者:行者123 更新时间:2023-12-01 18:43:57 25 4
gpt4 key购买 nike

我试图通过使用AFNetworking 3.0将图像上传到服务器。我的服务器返回“请选择要上传的文件”。这是我在php文件$filename = $_FILES["file"]["name"];中捕获上载文件的方式。

-(void)uplodeImages :(NSString *)image {
NSMutableURLRequest *request = [[AFHTTPRequestSerializer serializer] multipartFormRequestWithMethod:@"POST" URLString:@"http://local/upload.php" parameters:nil constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {
[formData appendPartWithFileURL:[NSURL fileURLWithPath:image] name:@"file" fileName:@"imagename.jpg" mimeType:@"image/jpeg" error:nil];
} error:nil];

AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration]];

NSURLSessionUploadTask *uploadTask;
uploadTask = [manager uploadTaskWithStreamedRequest:request progress:^(NSProgress * _Nonnull uploadProgress) {
dispatch_async(dispatch_get_main_queue(), ^{
NSLog(@"Laddar...");
});
} completionHandler:^(NSURLResponse * _Nonnull response, id _Nullable responseObject, NSError * _Nullable error) {
if (error) {
NSLog(@"Error: %@", error);
} else {
NSLog(@"%@ %@", response, responseObject);
}
}];
[uploadTask resume];
}

最佳答案

请注意:-我刚刚使用AFNetworking 3.0实现了图像上传服务,

->这里的kBaseURL表示服务器的基本URL

-> serviceName表示服务名称。

-> dictParams表示根据需要提供参数,否则为nil。

->图像意味着通过您的图像。

注意:-此代码是用NSObject类编写的,已经在我们的项目中应用。

+ (void)requestPostUrlWithImage: (NSString *)serviceName parameters:(NSDictionary *)dictParams image:(UIImage *)image success:(void (^)(NSDictionary *responce))success failure:(void (^)(NSError *error))failure {

NSString *strService = [NSString stringWithFormat:@"%@%@",kBaseURL,serviceName];
[SVProgressHUD show];

NSData *fileData = image?UIImageJPEGRepresentation(image, 0.5):nil;

NSError *error;
NSMutableURLRequest *request = [[AFHTTPRequestSerializer serializer] multipartFormRequestWithMethod:@"POST" URLString:strService parameters:dictParams constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {

if(fileData){
[formData appendPartWithFileData:fileData
name:@"image"
fileName:@"img.jpeg"
mimeType:@"multipart/form-data"];
}
} error:&error];

AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration]];

NSURLSessionUploadTask *uploadTask;
uploadTask = [manager uploadTaskWithStreamedRequest:request progress:^(NSProgress * _Nonnull uploadProgress) {

NSLog(@"Wrote %f", uploadProgress.fractionCompleted);
}
completionHandler:^(NSURLResponse * _Nonnull response, id _Nullable responseObject, NSError * _Nullable error) {
[SVProgressHUD dismiss];
if (error)
{
failure(error);
}
else
{
NSLog(@"POST Response : %@",responseObject);
success(responseObject);

}
}];

[uploadTask resume];

}

->现在申请我们的项目。
UIImage *imgProfile = //Pass your image.        


[WebService requestPostUrlWithImage:@"save-family-member" parameters:nil image:imgProfile success:^(NSDictionary *responce) {

NSString *check = [NSString stringWithFormat:@"%@",[responce objectForKey:@"status"]];
if ([check isEqualToString: @"1"]) {
//Image Uploaded.
}
else
{
//Failed to Upload.
}


} failure:^(NSError *error) {
//Error
}];

关于ios - AFNetworking 3.0上传图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38351136/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com