حل مشکل SyntaxError: Unexpected token < in JSON at position 0

mohsen1 سال قبل1 سال قبل
ارسال شده در
react

در صورتی که در هنگام دریافت اطلاعات جی سان از سرور با خطای زیر روبرو شدید:

      SyntaxError: Unexpected token < in JSON at position 0
    

به این معنی است که شما به جای دریافت داده‌های JSON از سرور، یک فایل HTML (یا XML) دریافت کرده‌اید و شما سعی در پارس کردن آن بعنوان JSON را دارید.

دلایل و روش‌های تشخیص خطا

  • ابتدا باید اطمینان حاصل کنید که سروری که به آن درخواست می‌زنید به درستی داده‌های JSON را ارسال می‌کند. در این مورد باید از تب "Network" در ابزارهای توسعه‌دهنده Chrome استفاده کنید تا محتوای پاسخ سرور را مشاهده کنید. احتمالاً مشاهده خواهید کرد که محتوای پاسخ HTML است که شامل تگ < در آغاز آن است.
  • توجه داشته باشید که شما ممکن است در حال درخواست اطلاعات از URL نادرستی هستید (e.g. http://localhost:3000 به جای http://localhost:3001/api/threads). این مشکل ممکن است ناشی از تغییرات در پیکربندی سرور یا برنامه وب‌پک شما باشد.
  • افزودن console.warn(xhr.responseText) می‌تواند به شما کمک کند تا متوجه شوید که چه محتوایی از سرور دریافت می‌کنید.
  • اگر سرور شما تنظیمات صحیحی نداشته باشد، ممکن است داده‌های JSON را به صورت HTML پاسخ دهد. اطمینان حاصل کنید که سرور شما برای ارسال داده‌های JSON، هدرهای درست مانند Content-Type: application/json را تنظیم کرده است.
رای
0
ارسال نظر
مرتب سازی:
اولین نفری باشید که نظر می دهید!