Vm2: تمديد تتطلب () مزيد

تم إنشاؤها على ١٥ يوليو ٢٠١٦  ·  4تعليقات  ·  مصدر: patriksimek/vm2

أرغب في خيار وهو دالة تأخذ vm2 's require كوسيطة وتُرجع دالة جديدة يجب استخدامها بدلاً من vm2 ' s require .

feature request stale

التعليق الأكثر فائدة

ملائم إلى حد ما: أنا أستخدم نظام ملفات مخصصًا للشفرة التي أرسلها المستخدم. هل هناك طريقة يمكنني من خلالها التعامل يدويًا مع المتطلبات المحلية ، مثل require('./otherUserSubmittedFile') ، وجلب الملف من نظام الملفات المخصص وتسليمه إلى vm2 إلى وضع الحماية؟

التحديث :
تقريبي جدًا ، ولكن تم تنفيذ شيء ما على غرار الملفات المخصصة / الافتراضية: https://github.com/bartjoyce/vm2-with-custom-fs

الاستخدام ، سيكون شيئًا من هذا القبيل:

NodeVM.file('/customfs/main.js', {
  require: {
    external: true,
    root: '/customfs/', // restrict local requires to within the custom fs
  },
  customfs: {
    getFileContents: (filename) => /* handle /customfs/ file read */,
    exists: (filename) => /* ... */,
    isDirectory: (filename) => /* ... */
  }
})

ال 4 كومينتر

ملائم إلى حد ما: أنا أستخدم نظام ملفات مخصصًا للشفرة التي أرسلها المستخدم. هل هناك طريقة يمكنني من خلالها التعامل يدويًا مع المتطلبات المحلية ، مثل require('./otherUserSubmittedFile') ، وجلب الملف من نظام الملفات المخصص وتسليمه إلى vm2 إلى وضع الحماية؟

التحديث :
تقريبي جدًا ، ولكن تم تنفيذ شيء ما على غرار الملفات المخصصة / الافتراضية: https://github.com/bartjoyce/vm2-with-custom-fs

الاستخدام ، سيكون شيئًا من هذا القبيل:

NodeVM.file('/customfs/main.js', {
  require: {
    external: true,
    root: '/customfs/', // restrict local requires to within the custom fs
  },
  customfs: {
    getFileContents: (filename) => /* handle /customfs/ file read */,
    exists: (filename) => /* ... */,
    isDirectory: (filename) => /* ... */
  }
})

bartjoyce أحتاج نفس الشيء! الرابط الخاص بك معطل ، هل قمت بنقله إلى مكان ما؟

callumlocke انتقلت منذ ذلك الحين إلى مشاريع أخرى وتوقفت عن صيانة الكود. الكود الذي كتبته هنا: https://github.com/bartjoyce/vm2/

إنها 30 التزامًا ، ولكن على الأقل يمكنك رؤية التعديلات التي أجريتها.

الالتزام المهم هو هذا: https://github.com/bartjoyce/vm2/commit/302e910610c0e1f1ef7a1d15a19a02828715f630

لقد أجريت تغييرات إضافية على vm2 غير موجودة في الريبو الخاص بي. إذا كنت تريد أن ترى هؤلاء أيضًا ، فأخبرني بذلك.

تم وضع علامة على هذه المشكلة تلقائيًا على أنها قديمة نظرًا لعدم وجود نشاط حديث لها. سيتم إغلاقه إذا لم يحدث أي نشاط آخر. شكرا لمساهماتكم.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات