Помогите, как передать ajax через input[type='file'] данные в nodejs. То что приходить, весить больше чем нужно и не открывается как картинка.
'use strict'
var fs = require('fs');
var express = require('express');
var cors = require('cors');
var app = express();
app.use(cors());
app.post('/', function (req, res) {
var data = '';
req.on('data', function (chank) {
data += chank;
}).on('end', function () {
fs.writeFile('file1.jpg', data, function (err) {
if (err) console.log(err.message);
});
});
});
app.listen(8001);
<!doctype html>
<title>API Testing</title>
<input type="file" name="file">
<img src="" alt="photo one">
<script>
'use strick'
var file_input = document.querySelector('input');
var img_url = document.querySelector('img');
var xhr = new XMLHttpRequest();
xhr.open('post', 'http://localhost:8001/', true);
xhr.addEventListener('load', function () {
console.log(xhr.responseText);
img_url.src = xhr.responseText;
});
file_input.addEventListener('change', function () {
xhr.setRequestHeader('Content-Type', 'multipart/form-data');
xhr.send(file_input.files[0]);
});
</script>