服务器不接受我的multipart / form-data

时间:2011-12-23 18:03:01

标签: iphone objective-c ios http

我尝试从iphone应用程序将图像上传到我的web服务。 web服务在php中编程。我必须将图像与device_id一起发送为multipart / form-data。

我的请求有问题,因为服务器不接受我的device_id(格式无效)。我100%肯定device_id是正确的,因为它适用于我的其他请求。

我认为我的请求结构有问题,因为Charles代理无法解码多部分表单数据。

这是我的请求(用查尔斯代理嗅探):

POST /api/profile/update HTTP/1.1
Host: THE_URL
User-Agent: SeduceMe/1.0 CFNetwork/548.0.3 Darwin/11.2.0
Content-Length: 6639
Accept: */*
Content-Type: multipart/form-data; boundary=---------------------------255141413922088
Accept-Language: de-de
Accept-Encoding: gzip, deflate
Cookie: PHPSESSID=tlcpnqugcpgs0skh3l2ip9ujh7
Connection: keep-alive
Proxy-Connection: keep-alive

---------------------------255141413922088
Content-Disposition: form-data; name="device_id"

mgs2AHyvfIcSXHSKE+0eHA==
---------------------------255141413922088
Content-Disposition: form-data; name="form[file]"; filename="avatar.jpg"
Content-Type: image/jpeg

RAW_JPEG_DATA
---------------------------255141413922088--

1 个答案:

答案 0 :(得分:1)

有一个很棒的包装来发布表单/数据。它是ASIHTTPRequest

请查看ASIFormData

感谢/