簡體   English   中英

PHP中的HTTPPost到JSON

[英]HTTPPost to JSON in PHP

我正在Javascript中執行HTTP Post請求以更新JSON文件。

function updateJson(dataNew){
  var stringData = JSON.stringify(dataNew);
    $.ajax({
    type: 'POST',
    contentType: 'application/json; charset=utf-8',
    url: 'update.php',
    data: {stringData},
    success : function(d){
       alert('done');}
    })
}

然后在PHP中:

<?php
  $a = json_encode(file_get_contents("php://input"));
  file_put_contents('newData.json', $a);
?>

我想在JSON文件中使用JSON數據,但是,json文件只包含一個字符串,類似於http帖子的請求有效負載。 我究竟做錯了什么?

我建議在數據對象中傳遞一個鍵/值對,並將contentType屬性保留為默認值(刪除它),如:

$.ajax({
    ...
    data: {myjson: stringData},
    ...
);

然后在PHP中你應該閱讀發布的數據並獲取myjson元素,而不再重新編碼,因為它已經是JSON:

<?php
  $a = $_POST['myjson'];
  file_put_contents('newData.json', $a);        
?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM