У меня есть следующие JSON послал (POST) из моего JavaScript в PHPДекодирование Json Строка Из JavaScript в PHP
function boardToJSON() {
return JSON.stringify({
"pieces" : gPieces, // gpieces and gdestinations is an array
"destinations" : gDestinations,
"boardSize" : kBoardHeight // boardSize is an integer value 9
});
// Ниже функция вызывается на кнопки Click и URLсодержит путь к php-файл.
function makeMove() {
var move;
$.ajax({
type: 'POST',
url: url,
contentType: "application/json",
dataType: "json",
async: false,
data: boardToJSON(),
success: function(msg) {
move = msg;
},
error: function(jqXHR, exception) {
if (jqXHR.status === 0) {
alert('Unable to connect.\n Verify Network.');
} else if (jqXHR.status == 404) {
alert('Requested URL of HalmaAI not found. [404]');
} else if (jqXHR.status == 500) {
alert('Internal Server Error [500].');
} else if (exception === 'parsererror') {
alert('Data from HalmaAI was not JSON :(Parse failed.');
} else if (exception === 'timeout') {
alert('Time out error.');
} else if (exception === 'abort') {
alert('Ajax request aborted.');
} else {
alert('Uncaught Error.\n' + jqXHR.responseText);
}
}
});
На стороне сервера (в PHP) Я пытаюсь получить его, как этот
$jsonString = file_get_contents("php://input");
$myJson = json_decode($jsonString);
echo $myJson["boardSize"]; // also tried $myJson.boardSize etc
Проблема в том, что я не могу расшифровать JSON в PHP. Может ли кто-нибудь мне помочь здесь, пожалуйста? Спасибо
Я не понимаю. Вы говорите, что публикуете JSON, но PHP, который вы показываете, пытается загрузить JSON из файла, а не получать его из POST. – Utkanos
@Utkanos, который является сырым почтовым телом ... – PeeHaa
Как вы отправляете данные? Что сказал 'var_dump()' вам? – PeeHaa