Как устранить эту ошибку «SyntaxError: Неожиданный токен <в JSON в позиции 0» - PullRequest
0 голосов
/ 24 сентября 2018

Должны ли данные быть отправлены в виде объекта JSON или в виде строки.Это значения JSON, которые необходимо отправить на URL.

  var d={
  "cand_name": "markzuck",
  "candidate_management_cand_info__pkey": 14,
  "candidate_management_job_id__fkey": "1",
  "cand_email": "jagadeesh.korikana@gmail.com",
  "cand_altemail": "b@gmail.com",
  "cand_contact": "6576575576",
  }; 

  var url =  fetch(url, {
    method: 'POST',
    body: JSON.stringify(d),
    headers: {'Content-Type': 'application/json'}
    }).then(response => { 
       alert(JSON.stringify(d));
       return response.json(); 
    }).then(data => { 
       alert(JSON.stringify(data));
    }).catch(err => {
       console.log(d);
       alert(err);
   });

Ответы [ 2 ]

0 голосов
/ 24 сентября 2018

Вам необходимо отправить данные JSON в виде строки, а не в виде объекта JS.Проверьте MDN документацию , относящуюся к этому.

Кроме того, убедитесь, что строка JSON действительна с использованием любого доступного в Интернете json lint.Мой личный фаворит JSONEditorOnline

0 голосов
/ 24 сентября 2018

Эта ошибка часто возникает, когда что-то, что вы пытаетесь проанализировать, поскольку JSON на самом деле не является строкой JSON.

Похоже, что вы на самом деле получаете HTML (из-за ошибки сервера или чего-то еще) и пытаетесь проанализировать его как JSON в response.json();.

. Я бы предложил проверить response.status и только еслиэто правильный ответ при разборе response.json();.

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