JavascriptTypeScript

JS/TS: วิธีแก้ปัญหา Error “SyntaxError: Unexpected token o in JSON at position 1”

เรื่องที่เกี่ยวข้อง - Javascript, JSON, TypeScript
Node JS Banner

สำหรับพวกเราที่ใช้ JavaScript หรือ TypeScript ในการทำงานกับข้อมูลระหว่างตัวแอพพลิเคชั่นกับฝั่ง Server ที่ปกติจะต้องทำงานกับข้อมูล JSON อาจจะเคยเจอข้อความ Error แบบนี้

SyntaxError: Unexpected token o in JSON at position 1

แล้วก็หัวหมุนอยู่สักพักใช่ไหม? เหมือนกันเลย

แต่ขอมาโน๊ตไว้ที่นี่แล้วกันว่า เคสที่มักเจอ Error แบบนี้ มักจะเป็นตอนที่เรากำลังพยายามใช้ JSON.parse() ในการแปลง JSON ในรูปแบบ String ให้อยู่ในรูปแบบ Object เพื่อใช้งานในแอพของเรา

JSON.parse(req.body)
SyntaxError: Unexpected token o in JSON at position 1

สาเหตุนั้นเกิดจาก

ตัวแปร JSON ที่เราคิดว่าเป็น String ยังไม่ได้แปลงนั้น มันแปลงมาให้แล้ว! มัน parse มาให้แล้ว!

ดังนั้นอาการแบบนี้มักจะเกิดจากการที่เรามีการใช้ module หรือ framework ร่วมในโปรเจคด้วย และเขาใจดี ทำให้เราแล้ว เอาไปใช้ได้เลยไม่ต้องมาแปรรูปอีกครั้งครับ

จบโน๊ตด้วยประการฉะนี้ ถ้าชอบเทคนิคดีๆ แบบนี้ไปกดไลค์แฟนเพจ กับ Youtube Channel พลด้วยล่ะ

ที่มา – StackOverflow

เริ่มต้นยุค AI ด้วยคอร์สฟรี และพรีเมี่ยม กับพล

หากชอบสิ่งที่พลเล่า เรื่องที่พลสอน สามารถสนับสนุนพลโดยการเข้าเรียนคอร์สออนไลน์ของพลนะคร้าบ

  • เข้าใจง่าย ใช้ได้จริง ออกแบบการสอนอย่างเข้าใจโดยโค้ชพล
  • มีคอร์สสำหรับคนใช้งานทั่วไป จนถึงเรียนรู้เพื่อใช้งานในสายอาชีพขั้นสูง
  • ทุกคอร์สมีใบประกาศณียบัตรรับรองหลังเรียนจบ

เราใช้คุกกี้เพื่อพัฒนาประสิทธิภาพ และประสบการณ์ที่ดีในการใช้เว็บไซต์ของคุณ คุณสามารถศึกษารายละเอียดได้ที่ นโยบายความเป็นส่วนตัว และสามารถจัดการความเป็นส่วนตัวเองได้ของคุณได้เองโดยคลิกที่ ตั้งค่า

Privacy Preferences

คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น

Allow All
Manage Consent Preferences
  • Always Active

Save