If make this request, server-side NodeJS shows an empty string. I also try with remove header but result same empty string result like {}. I think formData append problem. here text and files are perfectly loaded.
const xhr = new XMLHttpRequest();
//get username and pass from old url
let oldUrl = (new URL(document.location)).searchParams
let username = oldUrl.get('username')
let password = oldUrl.get('Password')
//set user and pass
let url = "/new_post_request_from_user?username=" + username + "&Password=" + password
xhr.open('POST', url, true);
xhr.onload = function () {
let response = JSON.parse(xhr.responseText)
console.log(response)
}
let text = document.querySelector('[name=text]').value;
let files = document.querySelector('[name=imges]').files;
let formData = new FormData();
formData.append('text',text)
formData.append('picture', files[0]);
xhr.setRequestHeader("Content-Type", "multipart/form-data");
xhr.send(formData);
console.log(...formData)
return false;
Here is my html/pug code
textarea(type="text" placeholder='Post new think' name='text' required)
input(type="file" name='imges' required)
input(type="submit" value="Post" id="post")
Any idea, how to solve it ?