ios - 如何将原始 NSData 和一些 NSStrings 发布到我的服务器?

标签 ios objective-c cocoa-touch nsdata nsjsonserialization

我有一大块 NSData 要发送到我的服务器,但我还想发送一个字符串键映射到字符串键的字符串字典。

如何在同一个请求中同时发布两者?

几乎所有指南都显示将其包装在 NSDictionary 中,然后使用 NSJSONSerialization 将其转换为 NSData 然后发布,但我不能在同一个 NSDictionary 中使用 NSData 和 NSStrings 它只会崩溃,所以我假设我必须将它们分开,但那看起来如何?

基本上我如何将 JSON 序列化为 NSData,然后还有一个单独的 NSData blob?

最佳答案

let body = NSMutableDictionary()
body.setValue("myString" forKey: "stringType")
body.setValue(data?.base64EncodedString(options: .lineLength64Characters) forKey: "dataType")

这样你就可以在字典中同时拥有数据和字符串。 这里 'data?.base64EncodedString(options: .lineLength64Characters)' 返回一个带有 base64 编码的 string。所以你的字典只包含字符串,在服务器端你必须将它转换回数据。

希望能解决你的问题

关于ios - 如何将原始 NSData 和一些 NSStrings 发布到我的服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51955789/

相关文章:

ios - 在 swift 编程语言中使用隐式定义的常量类型有什么好处?

objective-c - 使用 UIImagePNGRepresentation 保存 UIImage 不保留我的图层修改

iphone - nib 文件未在 Xcode 4 中打开

objective-c - CGPath 在点之间添加一条曲线

objective-c - 由本地 http 服务器生成的自定义 FCGI 应用程序的套接字路径是什么? (即apache/mod_fcgid、lighttpd/mod_fastcgi等)

iphone - 如何创建类似 NSURLConnection 的东西?

ios - UITableView 方法 - 委托(delegate)、观察者或通知中心

objective-c - 字符串帮助 - Objective C

ios - 等到下一次布局更新(布局更新周期结束)后再执行某些代码

cocoa - 计算当前时间和下一个事件之间的秒数