簡體   English   中英

我如何解決此錯誤“語法錯誤:JSON中位置0上的意外令牌<”

[英]How do i resolve this error “ SyntaxError: Unexpected token < in JSON at position 0”

數據應作為JSON對象發送還是應作為字符串發送。 這些是需要發送到url的JSON值。

  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);
   });

當您嘗試解析為JSON的內容不是真正的JSON字符串時,通常會發生此錯誤。

看起來您實際上已經獲得了HTML(由於服務器錯誤或其他原因),並試圖在response.json();中將其解析為JSON response.json();

我建議檢查response.status並且僅當它是使用response.json();解析的有效響應時response.json();

您需要將JSON數據作為字符串而不是作為JS對象發送。 查看與此相關的MDN文檔

此外,請使用在線上可用的任何json lint來確保JSON字符串有效。 我個人最喜歡的是JSONEditorOnline

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM