2016-09-15 3 views
18

Как я могу выполнить запрос POJ AJAX, отправляющий данные JSON с использованием ванильного JS.Сделать XmlHttpRequest POST с помощью JSON

Я понимаю, что тип содержимого является кодировкой url и не поддерживает вложенные JSON.

Есть ли способ сделать такой запрос POST, используя вложенный JSON в простой старой JS. Я пробовал различные методы сериализации, найденные здесь на SO, но все они сглаживают мой JSON в один формат.

Вот мой JSON:

{ 
    email: "[email protected]", 
    response: { 
     name: "Tester" 
    } 
} 
+1

Ваш вопрос не содержит действительный JSON. Возможно, вы отправляете этот объект JavaScript, который затем преобразуется в JSON через какой-то процесс? В любом случае, как было сказано другими в комментариях к нижеследующему ответу, нет никаких причин, по которым ваш объект JSON должен быть сплющен. Если у вас возникли проблемы с определенной библиотекой или блоком кода, отправьте это вместо этого. –

ответ

43

Если вы используете JSON должным образом, вы можете иметь вложенные объекты без каких-либо вопроса:

var xmlhttp = new XMLHttpRequest(); // new HttpRequest instance 
xmlhttp.open("POST", "/json-handler"); 
xmlhttp.setRequestHeader("Content-Type", "application/json;charset=UTF-8"); 
xmlhttp.send(JSON.stringify({ email: "[email protected]", response: { name: "Tester" } })); 
+3

подождите, так что вы отправили ответ на вопрос, который, как вы знаете, дубликат? –

+5

Он приспособлен к потребностям OP –

+2

Я считаю, что цель состоит в том, чтобы помочь больше, чем указывать на то, что может не совсем соответствовать решению, которое кто-то ищет. –

Смежные вопросы