Я использую ajax для отправки сообщения в мое приложение. В почтальоне все работает как положено, однако в браузере данные отображаются как x-www-form-urlencoded
, а данные отсутствуют.
Ниже приведены мои настройки ajax и почтальона и соответствующие им заголовки в req ...
$.ajax({
url: '/',
headers: {
'Accept': 'application/json',
'Content-Type': "application/json"
}, // send as JSON
data: JSON.stringify(formData),
method: 'POST'
});
headers:
{ host: 'localhost:8080',
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0',
accept: 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'accept-language': 'en-US,en;q=0.5',
'accept-encoding': 'gzip, deflate',
referer: 'http://localhost:8080/',
'content-type': 'application/x-www-form-urlencoded',
'content-length': '0',
connection: 'keep-alive',
'upgrade-insecure-requests': '1',
pragma: 'no-cache',
'cache-control': 'no-cache' }
headers:
{ data: '{"name":"tester", "email": "t@t.com", "message":"This is a test"}',
contenttype: 'application/json',
datatype: 'xml/html/script/json',
'cache-control': 'no-cache',
'postman-token': 'cbaa5cbe-0ab8-4328-abfd-f5dc6a6acd90',
'user-agent': 'PostmanRuntime/7.1.1',
accept: '*/*',
host: 'localhost:8080',
'accept-encoding': 'gzip, deflate',
'content-length': '0',
connection: 'keep-alive' }
также мой соответствующий код сервера:
app.use(bodyParser.json());
//handle urlencoded data
app.use(bodyParser.urlencoded({extended:false}));
app.post('/', function (req, res) {
console.log(res);
console.log('----------------------------------------------------------');
console.log(req);
//var jsonData = JSON.parse(req.headers.data);
console.log(req.body);
console.log(req.data);
let transporter = courier.createTransport({...});
let mailOptions = {...};
transporter.sendMail(mailOptions, function (error, info) {
if (error)
console.log(error);
else
console.log('email sent:' + info.response);
});
res.render('index', {
title: 'Projects',
projects: projects
});
});
app.get('/', function (req, res) {
res.render('index', {
title: 'Projects',
projects: projects
});
});
плз halp!