【问题标题】:Upload things to a FTP in Objective-C iOS在 Objective-C iOS 中将内容上传到 FTP
【发布时间】:2013-01-07 03:50:51
【问题描述】:

几天前,我在询问如何从 FTP 下载文件,然后我解决了 NSData 和 dataWithContentsOfURL 这类问题:

ftp://user:pass@server/path/of/file.extension

但是现在我需要上传一个文件,我想知道是否有任何指令可以通过 URL 上传文件,但我认为这是不可能的,而且我看到的许多 iOS 库都使用 PHP,而我没有想要它,Apple 的 SimpleFTPSample 让初级开发人员感到困惑,以至于我什么都不懂,所以一个简单的代码来上传指定 URL、路径、文件、用户和密码的文件?

【问题讨论】:

  • 在这里试试。 chilkatsoft.com/ftp-objc.asp
  • 这不是免费图书馆...谢谢
  • 我只有 FTP 来在线存储东西
  • 我真诚地希望您使用某种的在线加密。该 URL 通常会导致用户名/密码以明文形式发送并且易于嗅探。 FTP 通常是一场安全噩梦。

标签: ios objective-c upload ftp


【解决方案1】:

如果您想要一个简单的库,我建议您使用 HTTP 和 AFNetworking 库。

但是,如果您想做 FTP,Apple 会提供分步说明。它有点毛茸茸,所以我建议根据需要复制和粘贴和调整。您将不得不稍微阅读一下文档。查找“上传文件”部分。

http://developer.apple.com/library/ios/#documentation/Networking/Conceptual/CFNetwork/CFFTPTasks/CFFTPTasks.html

这应该有助于解决苹果不提供代码的初始部分

CFStringRef url = CFSTR("ftp://ftp.somedomain.com/file.txt");
CFURLRef requestURL = CFURLCreateWithString(kCFAllocatorDefault, url, NULL);

CFReadStreamRef readStream = CFReadStreamCreateWithFTPURL(kCFAllocatorDefault, requestURL);

希望这会有所帮助。

【讨论】:

  • 用CFSTR不能做动态字符串吧?我不能只用文字字符串CFSTR(path)
  • CFString 与其 Cocoa Foundation 对应的 NSString 是“免费桥接”...这意味着您可以使用 NSString 动态创建字符串(假设您更熟悉它),然后将其分配为所以:CFStringRef url = (__bridge CFStringRef)(SOME_NSString)
【解决方案2】:

看看Apple Simple FTP Sample。你需要的都在那里。

如果您正在寻找框架,请查看ConnectionKit project

【讨论】:

  • 我知道买我的问题是为了其他选择:(
【解决方案3】:

BlackRaccoon 是一个很好的免费开源库,用于进行 FTP 传输。

【讨论】:

  • 我有一个问题——正如作者没有说明的那样——这是 CFNetwork 的 FTP 功能的包装器
猜你喜欢
  • 2018-08-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多