30
Янв
2018

запрос POST с сервера Node.js для PHP

Товарищи, скажите что делаю не так?

Делаю запрос post node.js, но ответ не приходит Пробовал библиотеки axios, request, request-promise, http(нативный) ... Аналогичный запрос на PHP выдает прекрасный результат.

В чем подвох?

пример который не работает javascript:

var key = querystring.stringify({ 'api_key': 'your_key'});
axios({
  method:'POST',
  url: 'https://miratext.ru/api2/call/user/balance',
  responseType : 'json' ,
  headers: {
    'Content-type': 'application/x-www-form-urlencoded',
    'User-Agent': 'Request-Promise',
    'Content-Length': key.length ,
  },
  content: key,
})
.then(function(response) {
   console.log('RESPONSE', response.data);
   console.log('RESPONSE', response.status);
   console.log('RESPONSE', response.statusText);
   console.log('RESPONSE', response.headers);
   console.log('RESPONSE', response.config);
}).catch(function (error) {
   if (error.response) {
     console.log('ERROR1 ', error.response.data);
     console.log('ERROR2 ', error.response.status);
     console.log('ERROR3 ', error.response.headers);
   } else if (error.request) {
     console.log('ERROR4 ', error.request);
   } else {
     console.log('ERROR5 ', error.message);
   }
     console.log('ERROR6 ', error.config);
});

пример рабочий php:

$ch = curl_init('https://miratext.ru/api2/call/user/balance');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query(array('api_key' => 'your_key')));

$result = curl_exec($ch);
print_r(json_decode($result, true));

Источник: https://ru.stackoverflow.com/questions/777500/%D0%B7%D0%B0%D0%BF%D1%80%D0%BE%D1%81-post-%D1%81-%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B0-node-js-%D0%B4%D0%BB%D1%8F-php

Тебе может это понравится...

Добавить комментарий