接收索引php中的JSON对象,处理页面上的JSON信息并返回JSON响应。怎么办?

接收索引php中的JSON对象,处理页面上的JSON信息并返回JSON响应。怎么办?,php,json,request,response,Php,Json,Request,Response,我遇到的情况是,一个网站会将用户重定向回我们的网站(在index.php上),并发送一个JSON请求。我将解析JSON请求并相应地处理它,然后发回JSON响应 我使用以下代码在我的index.php中获取JSON输入请求: $data_back = json_decode(file_get_contents('php://input')); //process $data_back // create json response $response = array("RESPONSE_CODE"

我遇到的情况是,一个网站会将用户重定向回我们的网站(在index.php上),并发送一个JSON请求。我将解析JSON请求并相应地处理它,然后发回JSON响应

我使用以下代码在我的index.php中获取JSON输入请求:

$data_back = json_decode(file_get_contents('php://input'));
//process $data_back
// create json response
$response = array("RESPONSE_CODE"=>"0","RESPONSE_DESCRIPTION"=>"OK","PAYMENT_ID"=>"XYZ");
// set header as json
header("Content-type: application/json");
// send response
echo json_encode($response);
但是,通过使用echo,内容将显示在主页面(index.php)上。如果我不使用echo,则响应不会发送回发送请求的其他站点,我也无法接收输入流中的数据

我试图用以下代码模拟另一个站点:

//set POST variables address and json string
    $url = 'http://XYZ.com/MYSITE/index.php';
    $fields = array("CARD_NUMBER"=>"123","CUSTOMER_NAME"=>"ABC","RECEIVED_AMOUNT"=>"5000","REQUEST_TYPE"=>"PAYMENT_RECEIVED");

    //url-ify the data for the JSON POST
    $fields_string = json_encode($fields);

    //open connection
    $ch = curl_init();

    //set the url, number of POST vars, POST data
    curl_setopt($ch,CURLOPT_URL,$url);
    curl_setopt($ch,CURLOPT_POST,count($fields));
    curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER , 1);

    //execute post
    $jsonResult = curl_exec($ch);

    //close connection
    curl_close($ch);

    $results = json_decode($jsonResult, true);

我不知道该怎么做。请指导我如何处理index.php上的JSON并返回响应。我是JSON新手。

刚刚测试了您的脚本,它工作正常。。。有两个可能的原因

A.无效的
URL

B.请求失败

在脚本的顶部添加

error_reporting(E_ALL);
ini_set('display_errors','On');
也可以用这个来计算旋度误差

if(curl_exec($ch) === false)
{
    echo 'Curl error: ' . curl_error($ch);
}

经过进一步的咨询,我发现我想要的是不可能的。谢谢你抽出时间回答。