ios - iPhone 使用 AFNetworking 上传多部分文件

标签 ios objective-c api file-upload

在我的 iOS 应用程序中,我想通过使用 NSMutableURLRequest 的 java API 为多部分文件上传文件。这是显示参数的表格。

  <form action="API_URL" encType='multipart/form-data' method=post>
            <input type=file name="files">
            <input type=submit value="Upload Attempt Files">

编辑表格 2

       <form action='URL' method="post" encType='multipart/form-data'>
<input name="key1" value='123'>
<input name="key2" value='asdf'>
<input name="key3" value='qwerty'>
<input name="key4" value='aaa'>
<input name="key5" value='aaa'>
<input name="key6" value='false'>
<input type="file"  name="files">
<input type=submit value="Create Forum Posts">
   </form>        

我怎样才能做到这一点?

Question显示如何使用 AFNetworking 上传多部分文件在 iOS 中( objective-c )。但是我不知道如何按照我正在使用的形式放置参数。

最佳答案

查看您的 HTML,name你的<input type=file>files ,因此,您将使用 @"files"作为name appendPartWithFileData 的参数方法。例如,使用 AFNetworking 3.x :

AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];

[manager POST:urlString parameters:nil constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {
    [formData appendPartWithFileData:imageData
                                name:@"files"
                            fileName:photoName mimeType:@"image/jpeg"];

    [formData appendPartWithFormData:[key1 dataUsingEncoding:NSUTF8StringEncoding]
                                name:@"key1"];

    [formData appendPartWithFormData:[key2 dataUsingEncoding:NSUTF8StringEncoding]
                                name:@"key2"];

    // etc.
} progress:nil success:^(NSURLSessionDataTask *task, id responseObject) {
    NSLog(@"Response: %@", responseObject);
} failure:^(NSURLSessionDataTask *task, NSError *error) {
    NSLog(@"Error: %@", error);
}];

(对于 AFNetworking 1.x 和 2.x 语法,请参阅此答案的修订历史。)

关于ios - iPhone 使用 AFNetworking 上传多部分文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15410689/

相关文章:

iphone - 我应该从什么类型的 iOS 项目模板开始?

ios - 如何在 iOS 中将自定义元数据写入 PNG 图像

ios - 静态链接动态框架

ios - 在仅查看模式下使用 PDF Kit 加载 pdf

javascript - SvelteKit:如何在不使用端点的情况下调用mongodb?

ios - Pickerview 内容未显示

ios - 如何通过代码获取A1532这样的iPhone设备监控模型?

java - REST - 如何处理不必要的请求?

ios - 访问 UIViewController 类别中的 UIButton

c# - 使用 Hammock .net 网络库发出 LinkedIn API 请求