【问题标题】:Upload files to the server from iOS app从 iOS 应用程序上传文件到服务器
【发布时间】:2013-11-09 13:10:34
【问题描述】:

我可以在 iOS 应用上将图片以外的文件上传到服务器吗?我使用 UIImagePickerController,它允许选择图像或拍照,然后我将它们附加并上传到服务器。我可以用 iPhone 中的 word 或 pdf 文件做同样的事情吗 请帮帮我!

【问题讨论】:

  • 什么服务器? UIImagePickerController 不允许你附加任何东西。它用于选择图像或拍照。你需要澄清这个问题。
  • 我相信你可以。 Dropbox 当然可以同步 PDF、ZIP 和其他类型的文件,所以我会说可以。也许将文件转换为 NSData 并使用 AFNetworking 之类的网络库将数据发送到服务器(注意:我自己没有尝试过)。

标签: ios file-upload upload


【解决方案1】:

这里是 ASIHTTP 库使用的代码 ASIHTTP Library Download

ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:@"Your Url"];

[request setPostValue:@"test" forKey:@"value1"];
[request setPostValue:@"test" forKey:@"value2"];

[request setTimeOutSeconds:20];

//Create a 256KB file
NSData *data = [[NSMutableData alloc] initWithLength:256*1024];
NSString *path = [[NSHomeDirectory() stringByAppendingPathComponent:@"Documents"] stringByAppendingPathComponent:@"file"];
[data writeToFile:path atomically:NO];

[request setFile:path forKey:@"file"];

[request startAsynchronous];

假设您使用的是 PHP Server,下面的代码可能对您有所帮助

$filedir = '';
$uploadfile = $filedir.basename($_FILES['myfile']['name']);


move_uploaded_file($_FILES['myfile']['tmp_name'], $uploadfile);

【讨论】:

  • 我不明白,这段代码上传的文件存在于我的 iPhone 中,对吧?但是如何让用户有机会选择应该上传的确切文件呢?
猜你喜欢
  • 2013-06-15
  • 1970-01-01
  • 2017-10-07
  • 1970-01-01
  • 2015-05-10
  • 2017-06-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多