我正在制作一个行为类似于云存储的应用程序。我需要使用Alamofire上传文件。当我上传相关文件时,我需要将一个字符串保存到我的文件数据中,该字符串包含以下内容:“ folderName / fileName”(显示我的云存储应用程序上的路径),以字节为单位。我可以通过在Java中使用以下代码来实现这一点:
@Override
protected Map<String, DataPart> getByteData() {
Map<String, DataPart> params = new HashMap<>();
params.put("parameterName", new DataPart("folderName/fileName", fileInBytes));
return params;
}
但是我不知道如何在Swift中做到这一点。我需要先使用字符串和数据创建一个新数据,然后再使用Alamofire上载它。我该如何实现?任何回应将不胜感激。
答案 0 :(得分:0)
感谢所有回答我的人,我找到了解决方案。我使用字符串和数据创建了一个名为DataPart的结构,并将该参数和参数名称一起放入我的Alamofire请求中。 “ What is the equivalent of a Java HashMap<String,Integer> in Swift”这个条目对我很有帮助,以防万一。
答案 1 :(得分:-1)
如果我理解正确,您想将路径(类型为String
)转换为swift的Data
结构,然后将其与合并文件的数据一起上传到服务器。
这就是您的操作方法-
let path = "folderName/fileName"
let pathEncodedData = path.data(using: .utf8)!
let fileData: Data = #YourFile'sData
let params = ["path": pathEncodedData, "fileData": fileData]