PDA

View Full Version : سوال: صدا زدن متدهای ASP.NET توسط jQuery



mohsen musavi
دوشنبه 10 خرداد 1389, 19:46 عصر
با عرض سلام خدمت دوستان
چطوری می توان با استفاده از jquery در ASP.NET با متد های سمت سرور کار کرد.مثلا با استفاده از متدها در جداول بانک اطلاعاتی درج و حذف و نمایش اطلاعات را انجام داد.

Chabok
دوشنبه 10 خرداد 1389, 21:47 عصر
با سلام

دو روش که معمولاً استفاده می شوند به شرح زیر است :

مشخص کردن توابع بصورت WebMethod و فراخوانی صفحه بصورت سرویس بصورت json call
http://www.dexign.net/post/2008/07/16/jQuery-To-Call-ASPNET-Page-Methods-and-Web-Services.aspx
http://weblogs.asp.net/craigshoemaker/archive/2008/09/29/using-jquery-to-call-asp-net-ajax-page-methods.aspx
http://encosia.com/2008/05/29/using-jquery-to-directly-call-aspnet-ajax-page-methods/


استفاده از یک GenericHandler (که با پسوند ashx شناخته می شوند) و ارسال یک در خواست ساده و دریافت پاسخ
http://sites.google.com/site/spyderhoodcommunity/tech-stuff/usingjqueryinaspnetappswithhttphandlersashx

یک روش دیگر نیز استفاده از ClientCallBack ها است (http://barnamenevis.org/forum/showthread.php?t=52380)
که البته در این روش درخواست توسط JQuery ارسال نمی شود .


این مقاله جامع را نیز بخوانید ضرر نخواهید کرد
http://www.west-wind.com/presentations/jquery/jquerypart2.aspx

موفق باشید .

javad_mjt
شنبه 27 شهریور 1389, 00:53 صبح
سلام
من یه سوالی برام پیش آمده
این روش هایی که گفته شد از نظر امنیتی مشکل نداره؟
چون متد ها دیده میشن و اگه از urlrewriting هم استفاده بشه زمان صدا زدن متد اسم صفحه هم ذکر میشه.

آیا از نظر امنیتی مشکلی نداره؟

gigil_Question
دوشنبه 29 شهریور 1389, 18:15 عصر
سلام


این روش هایی که گفته شد از نظر امنیتی مشکل نداره؟


اتفاقا این سوال من هم هست
مثلا اگه یه متد از وب سرویس فراخوانی بشه خب اسم وب سرویس و متد تو سورس جاوا در سمت کلاینت قابل رویته
یا اگه یه فایل aspx نوشته بشه و اعمال مورد نظر توی اون انجام بشه چی؟
آیا هر کس دیگه ای نمیتونه این متدها یا فایل aspx رو اجرا کنه ؟

javad_mjt
چهارشنبه 31 شهریور 1389, 16:40 عصر
:متفکر: میشه session رو با httpcontext.current.session برسی کرد.

اما باید راه بهتری هم وجود داشته باشه

NR_Nazifi
پنج شنبه 01 مهر 1389, 12:10 عصر
با عرض سلام خدمت دوستان
چطوری می توان با استفاده از jquery در ASP.NET با متد های سمت سرور کار کرد.مثلا با استفاده از متدها در جداول بانک اطلاعاتی درج و حذف و نمایش اطلاعات را انجام داد.

این مثال شاید بتونه بهت کمک کنه


$.ajax({
type: "POST",
url: "ViewArticleList.aspx/GetCategoryArticles",
data: "{'page':'" + page + "', 'rows':'" + rows + "', 'parent':'" + parent + "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
BuildTable(msg.d);

}
});
دراین تابع هنگام در ادرس url ادرس و متد مورد نظر و صدا کردم بعد با data پارامترها رو فرستادم و در نهایت اگر کار با موفقیت انجام شد نتیجه که همون msg است رو به یک تابع پاس دادم

NR_Nazifi
جمعه 02 مهر 1389, 13:31 عصر
سلام
من یه سوالی برام پیش آمده
این روش هایی که گفته شد از نظر امنیتی مشکل نداره؟
چون متد ها دیده میشن و اگه از urlrewriting هم استفاده بشه زمان صدا زدن متد اسم صفحه هم ذکر میشه.

آیا از نظر امنیتی مشکلی نداره؟

به نظر من نه زیاد مشکل ایجاد نمی کنه! البته اگر سیستم چند لایه نوشته بشه. چراکه طرف فقط به وب متد ها دسترسی داره و دنبال کردن مسیر حرکتی بین لایه ها کمی سخت می شه
البته نباید روبات ها را دسته کم گرفت چون می تونند از این کدها سواستفاده کرده و مدام درخواست به سرور بفرستند که فکر کنم از طریق session و چک کردن ip ویا گذاشتن محدودیت در ارسال از یک سیستم بشه جلوشو گرفت


:متفکر: در اخر هیچ کس نمی تونه امنیت رو 100 درصد تضمین کنه! :متفکر:

EnKamran
یک شنبه 14 مهر 1392, 05:32 صبح
در صفحاتی که اطلاعات به اطلاعات مهم دسترسی دارند استفاده نشه بهتره. معمولا این صفحات ادمین هستند که خوب با جلوگیری از دسترسی غیر مجاز کاربران درست میشه. تنها جایی که نمیشه ازش محافظت کرد صفحه لاگین هست که استفاده نشه بهتره در صورت استفاده شدن هم از ولیدیشن های قوی استفاده بشه .