شروع کار با فریم ورک Hapi.js

شروع کار با فریم ورک Hapi.js

hapi.js فریم ورکی برای ساخت وب اپلیکیشن و سرویس ها به کار می رود. Hapi این امکان را به برنامه نویس فراهم می کند که بجای اینکه وقت زیادی را صرف ساخت زیرساخت های برنامه کنند، بر روی منطق برنامه تمرکز کند. Hapi همانند فریم ورک Express است! اگر از قبل با Express آشنا باشید پس جای نگرانی وچود ندارد چون درک و منطق Hapi نیز همانند Express است.

آموزش های بیشتر در مورد Express را از اینجا پیدا کنید.

از این فریم ورک در بسیاری از شرکت های معروف مثل WalmartYahooMozillaPaypal و حتی در ساخت سایت npm استفاده شده است.

ساخت اولین سرور با Hapi

قبل از اینکه شروع کنیم باید از قبل Node.js و NPM را در سیستم خود نصب کرده باشید و همچنین حداقل آشنایی با جاوا اسکریپت را داشته باشید.

ابتدا با استفاده از NPM دستور زیر را در کنسول وارد کنید تا Hapi نصب شود.

همچنین می توانید بجای NPM از YARN برای نصب پکیچ های NODE.JS استفاده کنید.

توجه کنید دستور زیر معادل دستور فوق است:

 

پیشنهاد می شود این مقاله را مطالعه کنید تا معادل NPM و YARN را کشف کنید.

در کد فوق ما ابتدا یک نمونه جدید از hapi تعریف کردیم. آنگاه مشخصات اتصال را مشخص کردیم. (این بسیار مهم است چون در hapi می توان چندین اتصال داشته باشیم). همچنین برای ساخت API و باپلیکیشن در همان پروژه بسیار مفید است، یک اتصال به پورت 3000 گوش می دهد و دیگری به پورت 3001 گوش می دهد.

در مرحله سوم برای مسیری که مشخص کرده ایم handler تعریف کرده ایم. یک handler می تواند دو آرگومان request و reply را داشته باشد، اولی شامل اطلاعاتی از request آمده است و در حال که دومی به hapi می گوید که چطور می خواهیم به این درخواست های ارسال شده پاسخ دهیم.

در آخر نیز سرور را با start.start اجرا می کنیم.

 

لپ کلام

حدس میزنم که درباره این فریم ورک می خواهید بیشتر بدانید. در پست های آینده بیشتر در مورد Hapi خواهیم دید. ولی تا آن موقع فراموش نشود که بهترین جا برای مستندات است که بطور کامل درباره ویژگی های جدید آن با مثال توضیح داده است.


 

  • AmirDaliri

    salam patrik chi mashod ino zoodtar mineveshti masalan 4 mah pish ke man hano swich nakarde boodam ro ios 😉

    • پاتریک درآواکیانس

      salam amir jan, cher?! sherkate shoma ham az hapi estefade mikone ke 🙂