Swift NSMutableURLRequest解析多部分响应数据

Swift NSMutableURLRequest解析多部分响应数据,swift,httpresponse,multipartform-data,nsurlsession,nsmutableurlrequest,Swift,Httpresponse,Multipartform Data,Nsurlsession,Nsmutableurlrequest,我一直在寻找解决这个问题的方法,但每个人似乎都站在我的对立面 我正在编写一些swift代码来接收来自Django REST API(也是我自己编写的)的多部分/表单数据响应。响应包含一个JSON对象以及一个.png文件。响应主体在从API发送到swift模块之前看起来是这样的: --$AGORA_boundary$ Content-Disposition: form-data; name="json" {"category": "Household", "post_id": "226"} --

我一直在寻找解决这个问题的方法,但每个人似乎都站在我的对立面

我正在编写一些swift代码来接收来自Django REST API(也是我自己编写的)的多部分/表单数据响应。响应包含一个JSON对象以及一个.png文件。响应主体在从API发送到swift模块之前看起来是这样的:

--$AGORA_boundary$
Content-Disposition: form-data; name="json"

{"category": "Household", "post_id": "226"}
--$AGORA_boundary$
Content-Disposition: form-data; name="image"; filename="image_name"
Content-Type: image/png

.....image data.....
--$AGORA_boundary$--
根据HTTP标准,它被正确格式化为多部分/表单数据响应。响应内容类型为:

multipart/form-data; boundary=$AGORA_boundary$
swift模块遵循NSURLSession.dataTaskWithRequest模型

var image1Task = session.dataTaskWithRequest(image1Request,completionHandler: {data, response, error -> Void in
    //completionhandler code here
    //how do I parse the response data to receive the JSON object
    // and the the image data?
}
我不知道如何解析多部分数据对象,每次尝试快速多部分响应的研究都会产生人们试图发送多部分请求的结果;不是我想解决的那一边

那么,如何将传入的数据解析为两部分:JSON和image


提前感谢您的帮助

既然您拥有服务器,您可以发送用JSON编码的图像base64并消除多部分响应吗?这就是我们试图避免的。对图像进行编码的效率非常低,我们希望多部分响应可以提高速度。其中有些Obj-C代码看起来很合理。@Freestyle 076我也对其效率低下感兴趣,因为我发送的是base64编码的JSON,而不是多部分响应,以使我的生活更轻松。在服务器上打开压缩的情况下,您是否对每个进程的数据大小进行了实际比较?我一直认为gzip编码的JSON传输与多部分传输相比不会有太大的效率。。。或者你担心的不是尺寸?