در ادامهی تمرین قسمت قبل که مقدمات ثبت درخواست رزرو یک اتاق را فراهم کردیم، اکنون میخواهیم اگر کاربری بر روی دکمهی checkout now یک اتاق کلیک کرد، به درگاه مجازی پرباد منتقل شده، پرداخت را تکمیل کند، به برنامه هدایت شود و در آخر درخواست او در سیستم ثبت گردد. مزیت کار کردن با درگاه مجازی پرباد، امکان آزمایش محلی برنامه، بدون نیاز به یک درگاه بانکی واقعی است و زمانیکه قرار است با یک درگاه بانکی واقعی کار شود، فقط قسمت معرفی و تنظیمات ...
در قسمت قبل که لیست اتاقهای دریافتی از Web API را نمایش دادیم، هرکدام از آنها، به همراه یک دکمهی Book هم هستند (تصویر فوق) که هدف از آن، فراهم آوردن امکان رزرو کردن آن اتاق، توسط کاربران سایت است. این قسمت را میتوان به عنوان تمرینی جهت یادآوری مراحل مختلف تهیهی یک Web API و قسمتهای سمت کلاینت آن، تکمیل کرد. تهیه موجودیت و مدل متناظر با صفحهی ثبت رزرو یک اتاق
تا اینجا در برنامهی سمت کلای ...
در قسمت قبل ، سرویس و کامپوننت دریافت اطلاعات اتاقها را از Web API برنامه، تکمیل کردیم. در این قسمت با استفاده از اطلاعات مهیا شده، UI آنرا نیز تکمیل خواهیم کرد. نمایش منتظر بمانید در حین بارگذاری اولیهی کامپوننت
کامپوننتهایی که قرار است اطلاعات را از یک Web API دریافت کنند، مدتی باید منتظر بمانند تا عملیات رفت و برگشت به سرور، تکمیل شود. در این بین میتوان یک loading را به کاربر نمایش داد: @page "/hotel/rooms"
...
در قسمتهای Blazor Server مثال این سری ، با روش کار با سرویسهای سمت سرور برنامه، آشنا شدیم. در این نوع برنامهها، فقط کافی است اصل سرویس مدنظر را مستقیما در کامپوننتهای Razor تزریق کرد و سپس میتوان به نحو متداولی با آنها کار کرد؛ اما در برنامههای Blazor WASM خیر! به این نوع برنامههای سمت کلاینت باید همانند برنامههای React ، Angular ، Vue و یا حتی برنامههای مبتنی بر jQuery نگاه کرد. در تمام فناوریهای سمت کلاینت، این درخواستهای Aj ...
در قسمت قبل ، پایهی Web API و سرویسهای سمت سرور برنامهی کلاینت Blazor WASM این سری را آماده کردیم. این برنامهی سمت کلاینت، قرار است توسط عموم کاربران آن جهت رزرو کردن اتاقهای هتل فرضی مثال این سری، مورد استفاده قرار گیرد. پیش از این نیز یک برنامهی Blazor Server را تهیه کردیم که کار آن صرفا محدود است به مسائل مدیریتی هتل؛ مانند تعریف اتاقها و امکانات رفاهی آن. ایجاد یک پروژهی جدید Blazor WASM
برای تکمیل پیاده ساز ...
در این قسمت میخواهیم پایهی اعتبارسنجی و احراز هویت سمت سرور برنامهی کلاینت Blazor WASM را بر اساس JWT یکپارچه با ASP.NET Core Identity تامین کنیم. اگر با JWT آشنایی ندارید، نیاز است مطالب زیر را در ابتدا مطالعه کنید:
- « معرفی JSON Web Token » - اطلاعات بیشتر توسعهی IdentityUser
در قسمتهای 21 تا 23 ، روش نصب و یکپارچگی ASP.NET Core Identity را با یک برنامهی Blazor Serv ...
تا اینجا با اصول توسعهی برنامههای مبتنی بر Blazor Server آشنا شدیم. در ادامهی این سری، روش توسعه برنامههای مبتنی بر Blazor WASM را بررسی خواهیم کرد و پیش از شروع آن، باید بتوان امکانات سمت سرور مورد نیاز این نوع برنامههای سمت کلاینت را از طریق یک Web API تامین کرد که شامل دریافت و ارائهی اطلاعات و همچنین اعتبارسنجی و احراز هویت مبتنی بر JWT یکپارچهی با ASP.NET Core Identity است.
ایجاد پروژهی ASP.NET Core Web API
...
Blazor 5x - قسمت 23 - احراز هویت و اعتبارسنجی کاربران Blazor Server - بخش 3 - کار با نقشهای کاربران
در قسمت قبل ، روش یکپارچه سازی context مربوط به ASP.NET Core Identity را با یک برنامهی Blazor Server، بررسی کردیم. در این قسمت میخواهیم محدود کردن دسترسیها را بر اساس نقشهای کاربران و همچنین کدنویسی مستقیم، بررسی کنیم.
کار با Authentication State از طریق کدنویسی
فرض کنید در کامپوننت HotelRoomUpsert.razor نمیخواهیم دسترسیها را به کمک اعمال ویژگی attribute [Authorize]@ محدود کنیم؛ میخواهیم اینکار را از ...
در قسمت قبل ، نحوهی افزودن قالب ابتدایی ASP.NET Core Identity را به یک برنامهی Blazor Server بررسی کردیم. در این مطلب، قسمتهای ورود و خروج آنرا به همراه نمایش قسمتی از صفحه، تنها به کاربران اعتبارسنجی شده، بررسی میکنیم تا روش دسترسی به اطلاعات ASP.NET Core Identity را در یک برنامهی Blazor Server یکپارچه شدهی با آن، مطالعه کنیم. نمایش قسمتی از صفحه بر اساس وضعیت اعتبارسنجی کاربر
فرض کنید میخواهیم در کامپ ...
فرض کنید یک برنامهی تحت وب را نوشتهایم که برای مدارس و همچنین برای هنرستانها مورد استفاده قرار میگیرد. هنگامیکه برنامه را برای مشتری پابلیش میکنیم، از کلمات مدرسه و دانش آموز استفاده کردهایم. اما مشتری هنرستان از ما میخواهد این عبارتها، به هنرستان و هنرآموز تغییر کنند. خوب یک راهحل این هست که ریسورسها را قبل از هر پابلیش تغییر دهیم و همیشه باید حواسمان به این موضوع باشد که الان برنامه را برای مشتری مدرسه پابلیش میکنیم، یا مشتری ...