【问题标题】:JSON PHP CURL POSTINGJSON PHP CURL 发布
【发布时间】:2020-10-01 17:57:29
【问题描述】:

我正在尝试在我的本地服务器上以 PHP 发布一些 JSON 数据。我在下面有以下代码,但它不起作用。我错过了重要的事情吗?

<?php

 $postRequest = array ( 
      
    // Every array will be converted 
    // to an object 
       array( 
        "Attribute" => "FirstName", 
        "Value" => "maheshr"
    ),
       array( 
        "Attribute" => "LastName", 
        "Value" => "netha"
    ),array( 
        "Attribute" => "EmailAddress", 
        "Value" => "mahesh3@simandhareducation.com"
    ),array( 
        "Attribute" => "Phone", 
        "Value" => "9553754571"
    ),
    array( 
        "Attribute" => "Source", 
        "Value" => "Website"
    ), 
    array( 
        "Attribute" => "SearchBy", 
        "Value" => "Phone"
    ), 
    array( 
        "Attribute" => "mx_City", 
        "Value" => "Hyderabad"
    ) , 
    array( 
        "Attribute" => "mx_Course", 
        "Value" => "CPA"
    )
);

$postRequest = json_encode($postRequest);
// echo $postRequest;

$cURLConnection = curl_init('url');

curl_setopt($cURLConnection, CURLOPT_POSTFIELDS, $postRequest);
curl_setopt($cURLConnection, CURLOPT_RETURNTRANSFER, true);
$apiResponse = curl_exec($cURLConnection);
curl_close($cURLConnection);
// $apiResponse - available data from the API request
$jsonArrayResponse = json_decode($apiResponse);
echo $jsonArrayResponse;

?>

我无法从 curl 请求中获得任何响应。有人可以帮帮我吗?

谢谢。

【问题讨论】:

  • “我无法从 curl 请求中得到任何响应。” - 你实际上并没有检查你得到了什么响应,所以首先要做。不要天真地假设您返回的内容必须是有效的 JSON,因此可以解码。
  • 我检查了开发者工具,没有发现我发送到服务器的请求有任何响应
  • 你在说什么开发工具——浏览器?毫无意义,您正在服务器端发出请求。这甚至不是我开始谈论的内容 - 检查 $apiResponse 实际包含的内容。

标签: php json php-curl


【解决方案1】:

要发布 JSON 数据,请在调用 curl_exec() 之前设置标头,如下所示:

curl_setopt($cURLConnection, CURLOPT_HTTPHEADER, array(
        'Content-Type: application/json',
    ));

您可以参考这里:How to POST JSON Data With PHP cURL?

【讨论】:

    猜你喜欢
    • 2011-12-19
    • 2020-12-09
    • 1970-01-01
    • 2019-06-03
    • 2020-08-14
    • 2016-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多