今天测试用 php 的curl发送post数据给一个java写的url
我以前一般的做法是用
curl_setopt($ch,CURLOPT_POSTFIELDS,$postArray);
$postArray 是用数组方式
收java这边一直说收到不post数据,用自己的php程序可以正常收到。
手工写了个简单的 test.html 表单,提交到java接收正常
分析curl发送过的内容,发现变成了以下格式
[Content-Type:_multipart/form-data;_boundary] => ----------------------------9172ccb87cb0
------------------------------9172ccb87cb0
Content-Disposition: form-data; name=/"method/"
把数组转到xx=11&yy=22 的格式后正常
if(is_array($postArray))
$postString = http_build_query($postArray);
另如果post汉字给 jsp端会存在乱码问题。初始化 curl 后加上以下代码,来强制指定 charset=utf-8,默认试了没有这一句。