Возможно ли это?
xmlHttp.send({
"test" : "1",
"test2" : "2",
});
Возможно, с: заголовком с content type
: application/json
?:
xmlHttp.setRequestHeader('Content-Type', 'application/json')
В противном случае я могу использовать:
xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded')
а затем JSON.stringify
объект JSON и отправить его в параметр, но было бы здорово отправить его таким образом, если это возможно.
@mellamokb Ваш ответ будет генерировать простые пары ключей/значений post data с использованием типа mime типа application/x-www-form-urlencoded
@CIRK
Если вы хотите опубликовать JSON, вы можете сделать это
$.post("test.php", { json_string:JSON.stringify({name:"John", time:"2pm"}) });
или
(не используя здесь jQuery)
var xmlhttp = new XMLHttpRequest(); // new HttpRequest instance
xmlhttp.open("POST", "/json-handler");
xmlhttp.setRequestHeader("Content-Type", "application/json");
xmlhttp.send(JSON.stringify({name:"John Rambo", time:"2pm"}));
Если вы не используете jQuery, пожалуйста, убедитесь, что:
var json_upload = "json_name=" + JSON.stringify({name:"John Rambo", time:"2pm"});
var xmlhttp = new XMLHttpRequest(); // new HttpRequest instance
xmlhttp.open("POST", "/file.php");
xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlhttp.send(json_upload);
И для конца приема php:
$_POST['json_name']
application/x-www-form-urlencoded
если я использую stringify, то какой смысл использоватьapplication/json
? :)