"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > متغيرات البيئة: مقدمة قصيرة جدًا لتطوير JS

متغيرات البيئة: مقدمة قصيرة جدًا لتطوير JS

تم النشر بتاريخ 2024-10-31
تصفح:651

Environment Variables: a very short intro for JS development

تهدف هذه المقالة إلى أن تكون بمثابة بحث قصير في متغيرات البيئة الخاصة بي، ومن هنا جاء الأسلوب المقتضب

الأساسيات

  • إن المحطة الطرفية هو في الواقع تطبيق محاكي المحطة الطرفية
  • نستخدم المحطة للتفاعل مع Shell
  • يمكن أن تنتج الصدفة عمليات، مثل برنامج Javascript عن طريق تطبيق آخر، مثل العقدة
    • على سبيل المثال. الصدفة -> العقدة -> Index.js
  • عندما نفتح المحطة، يتم إنشاء جلسة جديدة في الصدفة
  • تحتوي هذه الجلسة على متغيرات يمكن ربطها بها (على سبيل المثال، يقوم echo $USER بطباعة اسم المستخدم الحالي)

العقدة

في العقدة، يتم الوصول إلى متغيرات البيئة عبر العملية العالمية.env

console.log(process.env.USER); // username
  • تصل التطبيقات عادةً إلى الأسرار أو البيانات المتعلقة بالتكوين عبر متغيرات البيئة
    • على سبيل المثال. Process.env.DB_CONNECTION
    • هذا مفيد لأننا نريد الحفاظ على سرية الأسرار، ولن يكون لدى كل مستخدم نفس احتياجات التكوين - وهذا يسمح بفصل أفضل بين المنطق والتكوين

طرق تحميل المتغيرات

هناك عدة طرق يمكننا من خلالها إتاحة هذه المتغيرات لبرامجنا.

(1) إتاحتها عبر سطر الأوامر:

مباشر جدًا — ما عليك سوى استدعاء الأمر باستخدام المتغير في سطر الأوامر.

DB_CONNECTION="postgresql://username:password@host:port/database_name" node index.js

(2) تخزينها في ملف .env

تتكون ملفات

.env من KEYS وVALUES والتي يتم فصلها بعلامة يساوي.

DB_CONNECTION="postgresql://username:password@host:port/database_name"

هذه الملفات شائعة، وهناك عدة طرق لإتاحتها لتطبيقك.

direnv

استخدم أداة مثل direnv التي تقوم بتحميل المتغيرات من ملف ما يجعلها متاحة في الصدفة؛ يتم تثبيته عادةً عالميًا.

يبحث direnv بشكل افتراضي عن ملف .envrc، ولكن يمكنه استخدام .env أيضًا، انظر هنا لتكوينه للقيام بذلك.

dotenv

استخدم أداة مثل dotenv التي تقوم بتحميل المتغيرات من ملف وتجعلها متاحة فيprocess.env.

ديرينف مقابل دوتينف

هناك إيجابيات وسلبيات لكل طريقة.

استخدام direnv لا يعرف اللغة ويعني تقليل التبعية، ولكنه يعني أيضًا أن مستهلكي التطبيق الخاص بك يحتاجون إلى طريقتهم الخاصة لتحميل متغيرات البيئة في حالة عدم استخدام direnv؛

يضمن استخدام dotenv أن مستهلكي التطبيق يمكنهم فقط استخدام ملف .env دون أي قلق، ولكنه يضيف حزمة فقط للقيام بشيء يمكن أن يفعله الصدفة محليًا.

علم العقدة

أدرجت العقدة مؤخرًا دعمًا (الإصدار 20.6.0) لاستخدام ملفات .env مباشرةً.

يجب استخدام العلم

node --env-file=.env index.js

مثل dotenv، هذا يجعل محتوى .env متاحًا فيprocess.env.

ملخص

  • متغيرات البيئة هي تقنية أصلية في الصدفة
  • هناك عدة طرق مختلفة لتحميلها — مباشرة، direnv، dotenv، العقدة
  • يقوم direnv بتحميل المتغيرات في الصدفة الخاصة بك، لكن dotenv والعقدة تجعلها متاحة فقط لتطبيقك عبرprocess.env
  • إذا كنت تستخدم العقدة، فمن المحتمل أن تختار استخدام علامة --env-file الجديدة
بيان الافراج تم إعادة إنتاج هذه المقالة على: https://dev.to/charlesloder/environment-variables-a-very-short-intro-for-js-development-18j3?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ [email protected] لحذفه
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3