У меня есть форма, в которой есть файлы, поэтому я использую XMLHttpRequest для обработки отправки данных.Как создать объект формы формы XMLHttpRequest FormData
То, что я пытаюсь сделать, - это возможность отправлять объекты, которые будут разбираться с помощью jackson на стороне сервера. как и с json.
Например:
{ "number": 123, "string": "Hello World", "object": { "a": "b" }
}
Так я хочу, чтобы создать "объект". от того, что я знаю, я могу только «число» и «строка» с
formData.append("string", "Hello World");
Может быть, есть способ отформатировать его?
, когда я просто добавить некоторые JSON отформатированный объект я получаю это в результате:
var oData = new FormData(document.forms.namedItem("upload-form")); element= {}; element.id = 2; element.type = "dfsdf"; element.url = "sdfsdff"; element.version = "asdasd"; arrayOfelement[0] = framework; oData.append("file", this.myfile.getFile()); oData.append("frameworks",JSON.stringify(arrayOfelement)) var xhr = new XMLHttpRequest(); xhr.open('POST', 'design', true); xhr.onload = function(e) { console.log("upload finished"); }; console.debug("sending form data", oData); xhr.send(oData); ------WebKitFormBoundaryVWNBucDMZSIlUcXY
Content-Disposition: форм-данных; Name = "arrayOfElements" { "0": { "ID": 2, "типа": "dfsdf", "URL": "sdfsdff", "версия": "Asdasd"}}
, который явно не анализируется ни на чем на стороне сервера.
Ваш 'WebKitFormBoundary' пример не совсем соответствует вашей JavaScript , но предполагая, что строка JSON делает ее серверной стороной примерно в той форме, которую вы описали, каким образом она явно «не будет анализироваться ни на чем на стороне сервера»? Вы отметили этот вопрос как Джексон, поэтому я предполагаю, что ваша серверная сторона - это Java. Вы пытаетесь выяснить, как разбирать данные POST и JSON анализировать строку POST с помощью Jackson? –