nodejs مساعدة


التعليق السابق

نعم مسار الصورة صحيح

ولكن لا يمكنني الغاء socket.handshake.headers.host، بسبب أن الموقع مدمج مع أكثر من رابط ولكل رابط صورة إفتراضية خاصة به

قبل تعيين الصورة الافتراضية، تأكد من وجود الملف في المسار المحدد، يمكنك استخدام مكتبة fs للتحقق من وجود الملف:

const fs = require('fs');
const path = require('path');


const wert = OnlineUser.findIndex(lilianna => lilianna.id == data.data.id);
if (wert != -1) {
  const defaultPicPath = `/site/${socket.handshake.headers.host}/pic.png`;
  
  fs.access(path.join(__dirname, defaultPicPath), fs.constants.F_OK, (err) => {
    if (err) {
      console.error(`Default pic not found: ${defaultPicPath}`);
    } else {
      UserInfo[data.data.id].pic = defaultPicPath;
      OnlineUser[wert].pic = defaultPicPath;
      io.emit("SEND_EVENT_EMIT_SERVER", {
        cmd: "u^",
        data: OnlineUser[wert]
      });
      if (UserInfo[data.data.id].uid) {
        UsersRepo.updateBy({
          state: "updatePic",
          uid: UserInfo[data.data.id].uid,
          pic: defaultPicPath
        });
      }
    }
  });
}

قمت بتجربة الكود قبل قليل وللأسف لم تنجح ، يعطي خطأ

Default pic not found ، ولا يتم حذف الصورة


تطوير الويب

مجتمع لمناقشة وتبادل الخبرات حول تطوير الويب. ناقش أحدث التقنيات، اللغات، والأدوات في عالم تطوير المواقع والتطبيقات. شارك مشاريعك، اسأل عن نصائح، وتعاون مع مطورين محترفين وهواة.

91.3 ألف متابع