برنامج Zeit Now التعليمي

تعرف على كيفية استخدام منصة Now التي أنشأتها Zeit

يتم استدعاء Zeit الآنفيرسيل، وقد يكون هذا البرنامج التعليمي قديمًا

من أبسط الطرق لنشر تطبيق Node.js من خلالحالياالمنصة التي أنشأتهاتسايت.

الآن تم إطلاق 2 مؤخرًا. تركز هذه الدروس على ذلك. هناك العديد من الاختلافات عن Now 1 ،أبرزت في هذا المنشور.

الآن يجعل عملية النشر والتوزيع للتطبيق بسيطة جدًا وسريعة جدًا. يمكنك التفكير في الأمر على أنه "السحابة" ، لأنك لا تعرف حقًا مكان نشر تطبيقك ، لكنك تعلم أنه سيكون لديك عنوان URL يمكنك الوصول إليه من خلاله.

يمكنك استخدام Now لنشر تطبيقات Node.js ومواقع الويب الثابتة وغير ذلك الكثير.

الآن لا يدعم Node.js فقط (أيضًا Go و PHP و Python ولغات أخرى) ، ولكن في هذا البرنامج التعليمي سأفكر في هذه التقنية فقط.

يمكنك الآن بدء الاستخدام مجانًا ، مع خطة مجانية سخية تتضمن SSL مجاني ، واستضافة 100 جيجابايت ، و 1000خادماستدعاءات الدوال في اليوم ، 1000 بناء شهريًا ، 100 جيجابايت من النطاق الترددي شهريًا ، واستخدام النطاق الترددي العالميCDN. الصفحة التسعيريساعد في الحصول على فكرة عن التكاليف إذا كنت بحاجة إلى المزيد.

تثبيت

أفضل طريقة للتثبيتالآن سطح المكتب، والتي يمكنك التنزيل من خلالهاhttps://github.com/zeit/now-desktop. انه ... انهاإلكترونالتطبيق الذي يثبت أيضًا ملفالآن CLI، أداة سنستخدمها لاحقًا.

من خلال ذلك ، يمكنك نشر التطبيقات باستخدام واجهة سحب وإفلات بسيطة وسهلة الاستخدام حقًا

نصيحة: يمكنك أيضًا تثبيت سطر الأوامر فقط ، إذا كنت تفضل ذلك ، منhttps://zeit.co/download

بعد البدء ، أدخل بريدك الإلكتروني وسيستمر الآن في المصادقة ، وإرسال بريد إلكتروني للتحقق.

بمجرد تسجيل الدخول ، يمكنك اتباع البرنامج التعليمي السريع:

بعد التمرير عبر الشاشات القليلة ، يتم نقل التطبيق إلى شريط القائمة ، وعند النقر فوقه ، يتم عرض موجز النشاط:

كما ترى في هذه الصورة ، لقد قمت بتثبيت الآن منذ بضعة أشهر باستخدام حساب البريد الإلكتروني هذا ، لكنني لم أفعل الكثير عليه.

بعد تسجيل الدخول باستخدام تطبيق سطح المكتب ، تم استدعاء تطبيق سطر الأوامرnowتم تسجيل الدخول تلقائيًا أيضًا.

القفز فيطرفية، و اهربnow.

نصيحة: إذا لم تكن بحاجة إلى / تريد عميل سطح المكتب ، فيمكنك أيضًا تثبيت ملفnowCLI باستخدام الأمرnpm install -g now. بعد ذلك ، ستستمر في تسجيل الدخول باستخدامnow login.

نشر تطبيق على Now

بالنسبة إلى "التطبيق" ، يمكننا فقط التفكير في ملف HTML بسيط ، أو تطبيق معقد به العديد من خطوات الإنشاء.

مهما كان تطبيقك ، يمكنك تشغيله

now

في مجلد ، وسيتم تحميل هذا المجلد إلى السحابة.

مع تحذير واحد فقط: يجب أن يحتوي المجلد على ملفnow.jsonملف به (على الأقل) هذا المحتوى:

{
  "version": 2
}

to make sure the projects runs on Now 2.

بمجرد تشغيل ملفnowالبرنامج ، يتم نشر التطبيق إلى عنوان URL عشوائي ضمنnow.shنطاق. في هذه الحالة ، هوhttps://test-8h57iozp1.now.shولقد نشرت للتوindex.htmlملف مع<p>test</p>في محتواه:

بعد النشر ، يسرد تطبيق Now Desktop هذا النشاط

إذا قمت الآن بتغيير محتوى ملف index.html وتشغيله مرة أخرىnow، ستحصل على ملفعنوان URL مختلفلتطبيقك.

قد يكون هذا غير متوقع ، أليس كذلك؟ قبل ذلك كانtest-8h57iozp1.now.sh، الآن هوtest-m2vcwrsc8.now.sh. ويمكن الوصول إلى كل من عناوين URL. لماذا؟

يجب أن يكون السلوك المتوقع هو تحديث عنوان URL القديم بالمحتوى الجديد ، ولكنه ليس كذلك.

الآن لديه هذا المفهومثباتلديها العديد من المزايا ، بما في ذلك خيار اختبار إصدارات متعددة في نفس الوقت ، والعديد من المطورين الذين يعملون على أجزاء مختلفة من التطبيق ، والتراجع ، والمزيد.

في الإنتاج أو عندما تريد مشاركة تطبيقك ، تحتاج إلى عنوان URL ثابت. لا يمكن أن يتغير في كل مرة تقوم بتحديثه ، أليس كذلك؟ للقيام بذلك ، عليك إنشاء ملفالاسم المستعار:

now alias test-m2vcwrsc8.now.sh test-flavio

بعد تشغيل هذا الأمر ،test-flavio.now.shسوف يشير إلى هذا النشر.

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

نفس الشيء للتراجع إلى نشر سابق ، فأنت مجرد اسم مستعار إلى عنوان URL الفريد القديم.

لإزالة النشر ، قم بتشغيلnow rm <URL>:

now rm test-m2vcwrsc8.now.sh

تكوين وظيفة لامدا

يمكننا تنفيذ تطبيق Node.js عند الطلب عند زيارة عنوان URL معين.

على سبيل المثال ، أضف ملفtest.jsملف بهذا المحتوى:

module.exports = (req, res) => {
  res.end(`Hi!`)
}

In order to make it executable, we must add a build step to now.json:

{
  "version": 2,
  "builds": [{ "src": "test.js", "use": "@now/node" }]
}

Head to https://test-a0onzajf4.now.sh/test.js to see the result (“Hi!”)

The curious thing is that now the index.html file does not load any more like before. This is because the default build step is overwritten, so we need to add one to fix this:

Add the line { "src": "index.html", "use": "@now/static" } to our build:

{
  "version": 2,
  "builds": [
    {
      "src": "test.js",
      "use": "@now/node"
    },
    {
      "src": "index.html",
      "use": "@now/static"
    }
  ]
}

Where to go from here

There’s lots more to find out about Now, but this tutorial will hopefully get you started in the right direction.

Some useful resources for you are


More services tutorials: