Вызов API-интерфейса FCM ответил JSON_PARSING_ERROR: неожиданный токен END OF FILE в позиции 0 - PullRequest
0 голосов
/ 16 апреля 2019

Я пытаюсь реализовать устаревший вызов на сервер FCM, где ответ является неожиданным.Там он показывает ошибку синтаксического анализа, которая не отслеживается для меня на данный момент.Я публикую фрагмент кода ниже.Пожалуйста, помогите мне, если что-то пропущено или неправильно написано.

var request = require('request');

let message = {
"to": atoken,
"data": {
  title: "My first push notification",
  body: "Hello World!!!"
  }
  };

  // //let message = req.body.message;
  let key = "AIzaSyA1zIxVFJ3F7-_-XXXXXXXXXXXXXXXXXXX";
  request({
  method: 'POST',
  uri: 'https://fcm.googleapis.com/fcm/send',
  headers: {
  'Content-type': 'application/json',
  'Authorization': 'key=' + key
  },
  postData: JSON.stringify(message)
  },
  function (error, response, body) {
  if (error) {
    console.error('upload failed:', error);
    res.status(500).json({ error: true, data: { message: error.message } });
  } else {
    let data = response;
    console.log('Upload successful!  Server responded with:', 
    data.toJSON());
    //res.status(200).json(response);
   }
  });

Ответ будет таким:

 body:
 'JSON_PARSING_ERROR: Unexpected token END OF FILE at position 0.\n',
 headers:
 { 'content-type': 'text/plain; charset=UTF-8',
  date: 'Tue, 16 Apr 2019 06:34:05 GMT',
  expires: 'Tue, 16 Apr 2019 06:34:05 GMT',
  'cache-control': 'private, max-age=0',
  'x-content-type-options': 'nosniff',
  'x-frame-options': 'SAMEORIGIN',
  'x-xss-protection': '1; mode=block',
  server: 'GSE',
  'alt-svc': 'quic=":443"; ma=2592000; v="46,44,43,39"',
  'accept-ranges': 'none',
  vary: 'Accept-Encoding',
  connection: 'close' },
  request:
  { uri:
   Url {
   protocol: 'https:',
    slashes: true,
    auth: null,
    host: 'fcm.googleapis.com',
    port: 443,
    hostname: 'fcm.googleapis.com',
    hash: null,
    search: null,
    query: null,
    pathname: '/fcm/send',
    path: '/fcm/send',
    href: 'https://fcm.googleapis.com/fcm/send' },
   method: 'POST',
   headers:
   { 'Content-type': 'application/json',
    Authorization: 'key=AIzaSyA1zIxVFJ3F7-_-hrIbTHTehNRmTUwG8Z0',
    'content-length': 0 } } }

1 Ответ

0 голосов
/ 16 апреля 2019

Попробуйте изменить postData: JSON.stringify(message) в request.post () на body: JSON.stringify(message).

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