آپدیت پیش نمایش ASP.NET WebHooks 2016 معرفی شد!
جمعه 9 بهمن 1394WebHook در واقع یک رویداد اطلاع رسانی(notification) است که به URL انتخابی شما ارسال میشود.کاربران می توانند WebHook را برای رویداد هایی که در یک سایت اتفاق میفتد در سایت های دیگر پیکر بندی و فراخوانی کنند. بنابراین وب هوک برای پشتیبانی از خدمات شخص ثالث و API های خارجی ،بسیار مفید است. در این مقاله آپدیت جدید WebHook 2016 را معرفی می کنیم.
در حال حاضر دات نت بهبودهای چشمگیر و قابل توجهی در محصولات خود ایجاد کرده است اما هنوز هم کارهای کوچکی در گوشه های دات نت وجود دارد که لازم به تغییر و پیشرفت هستند. که یکی از آنها ارائه همین آپدیت برای WebHooks می باشد.
قبل از اینکه ویژگی های جدید را معرفی کنیم، توضیح مختصری در با ره اینکه وب هوک چیست ارائه می دهیم. وب هوک ها اساسا یک رویداد اطلاع رسانی هستند و ASP.NET WebHooks نسخه ی دات نت وب هوک می باشد. هنریک نیلسن از اعضای مایکروسافت، WebHooks را با دقت بیشتری در یک پست معرفی توضیح داده است که می گوید: "آنها یک الگوی HTTP بسیار سبک وزن هستند که یک مدل pub/sub ساده برای نوشتن Web APIs و سرویس های SaaS با هم را فراهم کرده اند". بنابراین وب هوک ها می توانند جهت دریافت رویدادهای وب برای کاربران ایجاد شوند، مانند دریافت notification هایی که از هر تعداد ارائه دهندگانی که وب هوک ها را در برنامه های خود عرضه می کنند.
این به روز رسانی، یک گام کوچک به حساب می آید اما ویژگی های مهمی سمت فرستنده (Sender-Side) در این پیش نمایش فعال شده است که باعث می شود راه دقیقتر و بهتری برای هدایت WebHook های رویداد محور به کاربران ایجاد شود. این به روز رسانی با دو ویژگی جدید بسیار جالب ارائه شده است زمانی که شما می خواهید WebHook را به دیگران بفرستید برخی رویدادها اتفاق می افتد که شامل:
- ارسال رویدادها به تمام کاربران ثبت شده برای یک رویداد مشخص
- رویدادهای مقیاس پذیری(Scaling out) و توازن بار(load balancing) با استفاده از صف های(queue) دائمی
شما می توانید این آپدیت را از nuget.org با نام Microsoft.AspNet.WebHooks جستجو کرده و با کلمه preview نتایج را فیلتر کنید و امکان مورد نظر را فعال کنید. در ادامه دو ویژگی ذکر شده را به طور مختصر توضیح می دهیم:
ارسال رویدادها به تمام کاربران
علاوه بر ارسال رویدادها به شکل WebHook به تمام کاربران، در حال حاضر این امکان نیز وجود دارد که WebHook به تمام کاربرانی که برای یک رویداد مشخص ثبت شده اند ارسال شود. همچنین اگر بخواهید بررسی کنید که کدام کاربر اطلاع رسانی وب هوک را دریافت کرده است، می توانید از یک گزاره برای فیلتر کردن کاربران استفاده کنید. به عنوان مثال در تصویر زیر گیرنده 2 و 5 این رویداد مشخص را با توجه به یک گزاره مشخص دریافت نکرده اند:
ارسال WebHook ها: Scaling Out و Load Balancing
در اینجا یک اینتر فیس IWebookSender جدید را معرفی می کنیم که اجازه می دهد ارسال وب هوک ها به بیرون را مقیاس کرده و توازن بار ایجاد کنید. به عبارت دیگر لازم نیست برای ارسال وب هوک ها یک وب سرور مستقیم داشته باشیم. با چنین ویژگی این اجازه به شما داده می شود که وب هوک های دائمی سمت فرستنده باقی بمانند و بر اساس آنچه که می خواهید آنها را scale up و scale out بکنید.
برای نشان دادن این ویژگی box ای برای ارسال وب هوک ها از طریق صف ذخیره سازی Azure در نظر گرفته ایم که در تصویر زیر آمده است، البته شما می توانید این عمل را با هر نوع صفی انجام دهید.
همچنین وب هوک ها روی پایان ارسال نیز قابل تنظیم هستند که کاربران یا توسعه دهندگان می توانند ارائه دهندگان(Providers) را مشخص یا مدیریت کنند (مانند SalesForce یا Instagram یا Slack) که در حال حاضر از چه کسانی رویداد ها را دریافت می کنند.
هرچند ویژگی هایی که در آغاز این سال معرفی شده اند شبیه گامهای کوچک به نظر می رسد اما آنها به اندازه ای مهم هستند که نیلسن ویژگی های جدید را به طور مفصل در وبلاگ مایکروسافت توضیح داده است.
- برنامه نویسان
- 2k بازدید
- 2 تشکر