اذهب إلى المحتوى

السؤال

نشر (معدل)

لقد اتبعت برنامجًا تعليميًا حول NextJS وحاولت الآن تعديله قليلاً. أردت تضمين ملف data.json في الصفحة. لكنني أتلقى دائمًا رسالة الخطأ 

Unexpected token < in JSON at position 0

أعلم أنه يجب علي تحويل ملف JSON إلى سلسلة نصية  كيف علي أن أفعل ذلك؟

  let res = await fetch(`${server}/data`);
  const articles = await res.json();

  return {
    props: {
      articles,
    },
  };
}

 

تم التعديل في بواسطة Wael Aljamal
توضيح السؤال

Recommended Posts

  • 1
نشر

تنسيق جواب الطلب للملف من الخادم يبدو أنه خاطئ ولا يعيد تنسيق JSON، حاول تحديد ال Accept مع الطلب وتحديد النوع ك application/json لطلب التسنيق حصرا JSON كالتالي:

let res = await fetch(`${server}/data`,{
  headers: {
    'Content-Type': 'application/json' // طلب التنسيق JSON من الخادم
  },
});

const articles = await res.json();

return {
  props: {
    articles,
  },
};

 

  • 1
نشر

في تطبيق المخدم لديك، تأكد من إرسال الرد للزبون على شكل JSON..   أي res.json

app.get('/', function(req, res){
    res.json({ user: 'wael' });
});

يجب أن يرسل المخدم الرد على شكل JSON ليتمكن المتصفح (العميل) من إعادة البيانات لشكل JSON بعد وصولها

في حال كنت تريد إرسال غرض كإجابة استخدم JSON.stringify:

response.write(JSON.stringify(anObject));

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...