Я пытаюсь отправить данные JavaScript на мой сервер NodeJS - PullRequest
0 голосов
/ 11 июля 2019

Итак, я пытаюсь отправить данные геолокации в NodeJS через запрос POST, но когда я консоль регистрирую данные в своем коде NodeJS, он просто показывает пустой объект.

Я уже проверил это с почтальоном, и я могу получить данные без проблем. Я думаю, что проблема заключается в клиентской части моего приложения

//**This is in the client Side(pure JS);

async function getWeather(position){

  let coords ={
    lat: position.coords.latitude,
    long: position.coords.longitude
  }

  const options = {
    method: "POST",
    body: JSON.stringify(coords),
    headers: {
      "Content-Type": "aplication/json"
    }
  };

  let response = await fetch("http://localhost:3000/weather", options);
  let location = await response.json();
}

.

//**This is in the server side

  app.post('/weather',(req,res)=>{

    let coords = req.body;
    console.log(coords); //This shows an empty object

    res.sendStatus(200);
  });

1 Ответ

0 голосов
/ 11 июля 2019

На стороне клиента вы можете попробовать этот код.Вы можете заменить URL своей конечной точкой и попытаться получить результат.Как показано ниже, я получаю ответ обратно в data после выполнения сценария.

Надеюсь, это поможет.

(async () => {
  const rawResponse = await fetch('https://httpbin.org/post', {
    method: 'POST',
    headers: {
      'Accept': 'application/json',
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({lat: 10, long: 20})
  });
  const content = await rawResponse.json();

  console.log(content);
})();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...