ReactJS: невозможно отправить данные JSON и PDF-файл за один вызов POST
Я работаю над GRAILS-ReactJs
основанный проект, который включает в себя сценарий, в котором мне нужно отправить RESUME и данные JSON в одном вызове POST. Тем не менее, я могу отправить файл за один вызов, но данные, которые я получаю, нулевые. я использую Grails-3
на моей стороне сервера и получения запроса POST в виде составного файла. Я хочу, чтобы оба объекта JSON и файловый объект Multipart были объединены в один объект для отправки на сервер, и я хочу получить файл и данные JSON как на стороне сервера. Я попытался изменить тип содержимого заголовка, но ut не работает.
1 ответ
Вы не можете публиковать данные JSON вместе с файлом или любым другим вложением. Вы можете опубликовать это как данные формы на вашем сервере. Данные формы передаются как данные, состоящие из нескольких частей, на сервер с соответствующими границами. Вот пример кода для вашей справки. Вы можете передавать данные json вместе с formData в качестве пары ключ-значение.
export function postAttachment (fileData, fileName) {
let formData = new FormData()
formData.append('prop1', 'value1')
formData.append('prop2', 'value2')
formData.append('upload', fileData, fileName)
return fetch('/your/endpoint', {
headers: {
'Accept': 'application/json',
'header1': 'headerValue1'
},
method: 'POST',
body: formData
})
}
Надеюсь это поможет. Удачного кодирования!