我有点问题。我的代码:
<?php
$url = "http://xxxx/duplicate";
$data = array (
userId => xxxx, // authentication userId
loginToken => 'xxxx', // authentication loginToken
"id" => "123456",
'section' => 'LotRental',
);
$data_string = http_build_query($data);
$ch = curl_init();
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
curl_close($ch);
print_r ($result);
echo json_encode($data_string);
?>
但它创建了这个帖子:
userId=xxxx&loginToken=xxxx&id=123456§ion=LotRental
它将“section”更改为“§ion”
请求看起来像:
userId=xxxx&loginToken=xxxx&id=123456§ion=LotRental
如何解决? 感谢
更新
我可以通过两种方式复制我的项目:上面的卷曲或只是在浏览器中输入网址
当我执行我的php脚本时,我收到来自服务器的错误:
HTTP ERROR: 405
METHOD_NOT_ALLOWED
RequestURI=xxxx/duplicate.dispatch
但是当我输入浏览器时
http://xxxx/duplicate?userId=xxxx&loginToken=xxxx&id=123456§ion=LotRental
一切正常
答案 0 :(得分:0)
脚本本身就可以了。到它的输出。看起来您正在浏览器中查看此脚本的输出。然后,您必须在将输出发送到浏览器之前对输出进行正确的HTML编码,但您似乎对它进行JSON编码。所以而不是:
echo json_encode($data_string);
你会用:
echo htmlentities($data_string);