مطالب
بررسی خروجی IsAjaxRequest در درخواست های http$ توسط AngularJS
در یکی از پروژه‌هایی که دارم از AngularJS  و ASP.NET MVC استفاده میکنم. به هنگام استفاده از درخواست‌های ایجکسی توسط سرویس http$ به مشکل عدم تشخیص ایجکسی بودن درخواست برخوردم.
توسط فیلتری که در اینجا توضیح داده شده و قرار دادن آن قبل از اکشن مورد نظر، میتوانیم تشخیص بدهیم که آیا درخواست رسیده از سمت کلاینت، ایجکسی است یا خیر؟ که در صورت ایجکسی نبودن درخواست، با صادر کردن یک استثنا مانع از اجرا شدن اکشن شویم. این فیلتر از اکستنشنی به نام IsAjaxRequest برای این تشخیص استفاده میکند:
HttpContext.Request.IsAjaxRequest();
اما هنگام استفاده از سرویس http$ ،  اکستنشن ()IsAjaxRequest همیشه مقدار False را برمیگرداند. در حالیکه با متدهای ساده ایجکسی Jquery مثل get.$ و... ، مقدار این اکستنشن True میشود و به خوبی هم کار میکند.
درخواست‌های هر دو مورد را که با فایرباگ بررسی کردم به این مقادیر برخوردم.
ویزگی‌های درخواست توسط get - Jquery.$

و ویژگی‌های درخواست توسط سرویس http - AngularJs$ :

همینطور که میبینید، در هدر درخواست http$ یک مورد مفقود الاثر شده به نام X-Requested-With داریم و همین مقدار است که مشخص میکند این یک درخواست ایجکسی است یا خیر و اکستنشن ()IsAjaxRequest نیر با همین مقدار عمل تشخیص را انجام میدهد. و به همین خاطر بود که این متد مقدار False را برمیگرداند.

بعد از کمی جستجو در این مورد ، به مخزن git  انگیولار رسیدم و به صراحت به این موضوع اشاره شده بود که این هدر به صورت پیشفرض از درخواست‌های http$ برداشته شده است.

بنابراین تنها راه حل این بود که خودمان به صورت دستی این هدر خاص رو به ماژول برنامه اضافه کنیم. به صورت زیر :

myAppModule.config(['$httpProvider', function($httpProvider) {
    $httpProvider.defaults.headers.common["X-Requested-With"] = 'XMLHttpRequest';
}]);

با اضافه کردن این هدر به درخواست‌های http$ ، اکستنشن ()IsAjaxRequest مقدار درست را برمیگرداند.

نظرات اشتراک‌ها
ساخت Single Page Application
سلام
در کجا نیاز هست که از SPA استفاده کنیم. و صفحات را به این صورت طراحی کنیم؟
و طراحی این صفحات با کدام فریمورک بهتر است؟

با تشکر
اشتراک‌ها
Sharp ماژولی برای تغییر ابعاد تصاویر در Node.js

این ماژول یکی از معروف‌ترین و پرسرعت‌ترین کتابخانه‌ها به منظور تغییر ابعاد تصاویر برای Node.js است.

این ماژول چیزی در حدود 4 الی 5 برابر، در سرعت تغییر ابعاد تصاویر تاثیر دارد و افزایش چشم‌گیر آن قابل لمس می‌باشد.

Sharp ماژولی برای تغییر ابعاد تصاویر در Node.js
اشتراک‌ها
استفاده کردن از ریپازیتوری و الگوی UOW در دات نت کور

یک نرم افزار به منظور انجام عملیات عادی CRUD (ایجاد، خواندن،  به روزرسانی و حذف) روی داده‌ها ، نیاز به دسترسی به نوعی ذخیره داده دارد که به طور معمول، این می‌تواند نوعی پایگاه داده ، سیستم فایل یا هر نوع مکانیسم ذخیره سازی دیگری باشد که برای ذخیره داده استفاده می‌شود. 

استفاده کردن از ریپازیتوری و الگوی UOW در دات نت کور