【发布时间】:2014-03-26 10:25:40
【问题描述】:
我想要实现的目标:使用 HTML/JQUERY 并将 XMLHttpRequest (JSON) 发布到 php 文件中,然后我们可以使用 CURL 将 json 提交到外部网站。
这是我提交数据的方式:
var myDate = "30/01/2014";
var n=myDate.split("/");
var fdate = (n[2]+"-"+n[1]+"-"+n[0] );
var xhr = new XMLHttpRequest();
xhr.open("POST", "index.php");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.onreadystatechange = function () {
if (this.readyState == 4) {
alert('Status: '+this.status+'\nHeaders: '+JSON.stringify(this.getAllResponseHeaders())+'\nBody: '+this.responseText);
}
};
xhr.send("{\n \"utoken\": \"\",,\n \"email\": \"blah@blah.co.uk\",\n \"customer_name\": \"blah blah\",\n \"order_id\": \"112897\",\n \"platform\": \"general\",\n \"order_date\": \"" + fdate + "\",\n \"currency_iso\": \"GBP\"\n}");
现在我如何在 php 中获取这些数据并对其进行操作。因为有类似utoken 之类的东西,我可以从 php 文件中获取,但无法获取其他信息。
PHP
$chs = curl_init();
curl_setopt($chs, CURLOPT_URL, "EXTERNAL API URL");
curl_setopt($chs, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($chs, CURLOPT_HEADER, FALSE);
curl_setopt($chs, CURLOPT_POST, TRUE);
curl_setopt($chs, CURLOPT_POSTFIELDS, print_r($HTTP_RAW_POST_DATA););
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/json"));
$response = curl_exec($chs);
curl_close($chs);
【问题讨论】:
-
你熟悉PHP中的
json_decode吗?
标签: javascript php jquery json curl