将JSON发送到PHP文件并在JS中接收响应

时间:2017-10-25 01:14:39

标签: javascript php json

我在这里看了很多其他问题,我尝试了很多不同的方法,但似乎都没有。

继承我的javascript文件

function sendData() {
     var jsondata;
     var j = {"pub_id":"'+pid+'","a_type":"'+a_t'","p_domain":"'+domain+'"}
     var str_j = JSON.stringify(j);

     var xhr = new XMLHttpRequest();
     xhr.open("POST", "https://ads.schlarman.org/zz.php", !0);
     xhr.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
     xhr.onreadystatechange = function() {
       if (xhr.readyState === 4 && xhr.status === 200) {
         jsondata = JSON.parse(xhr.responseText);
         console.log(jsondata);
       }
     }
}
sendData();

然后是zz.php

<?php 
   header('Content-type: application/json');
   $json = file_get_contents('php://input');
   $json_decode = json_decode($json, true);
   $json_encode = json_encode($json_decode);
   echo $json_encode;
?>

1 个答案:

答案 0 :(得分:1)

如果可能的话,从实际 javascript数组/对象构建你的json字符串

var j = {"pub_id":"'+pid+'","a_type":"'+a_t'","p_domain":"'+domain+'"};

可能&amp;可能应该

var j = {"pub_id": pid, "a_type": a_t, "p_domain": domain};

另外,尝试将以下标题添加到您的php

Access-Control-Allow-Origin: *

此处有更多信息:https://enable-cors.org/server.html