PDA

View Full Version : سوال: فراخوانی webmethods به وسیله jQuery و Javascript



RezaNrzdh
شنبه 01 فروردین 1394, 08:12 صبح
سلام و خسته نباشید.
من میخوام فراخونی هام بدون REFRESH صفحه صورت بگیره. عملا دو راه وجود داره



یک صفحه جدا بسازم که فقط توش کد های CSharp باشه و با Ajax صداش کنم و Response بگیرم ازش.
از Webmethod ها استفاده کنم و با jQuery یا Javascript فراخونیشون کنم.


حالا سوال هایی که دارم


کدوم یکی از این دو راه بهتره؟
اگه بخوام از webmethod استفاده کنم؟ بهتره و اصولیه که وب متد ها رو توی خود codebehind صفحه aspx بنویسم؟ یا باید همه رو داخل صفحه های asmx بسازم؟
اگه webmethod ها رو باید در داخل webservice ایجاد کرد...چجوری میشه بهشون دسترسی داشت؟
من برای صفحات سایت از URL Routing استفاده کردم ، وقتی میخوام به وسیله jQuery Ajax متد رو فراخونی کنم حتما باید URL رو جوری بنویسم که دارای extension باشه (مثال: pagename.aspx/methodname) آیا از نظر امنیت ایرادی نداره؟ چون در network monitoring کاربر میتونه این url رو ببینه! راهی برای مخفی کردن هست؟
پیرو سوال چهارم ، من تو سایت ها دیدم که درخواست های ajaxی به صورت GUID ارسال میشه؟ایا اطلاعاتی در موردش دارین؟
در ادامه سوال چهارم ، که فراخونی متد ها با jQuery بود حالا بخوام از javascript (مثال:ایجاد ScriptManager در صفحه و فراخونی متد ها به وسیله PageMethods) استفاده کنم، در صورت فعال بودن URL Routing دیگه کار نمیکنه.راهی وجود داره؟
در نهایت شما چه راه اصولی و ایمن و قابل اعتمادی رو پیشنهاد میکنید؟ممنونش

Mousavmousab
شنبه 01 فروردین 1394, 12:47 عصر
سلام

اصلاٌ از Script Manager استفاده نکنید ، خودتان دستی از Ajax یا اگر از Jquery استفاده می کنید از Ajax خود Jquery استفاده کنید.
و می تونین پارامتر ها را هم به صفحه Process ( کد سی شارپی که می نویسین) پای بدین و مشکلی نداره.
یا خود صفحه جاری را Call می کنید با پارامتر یا یک صفحه دیگر را Call می کنید و Response را دریافت می کنید.
این روش Performance خوبی داره و هر کدی که می نویسین خط به خط آن را می دونین چیه و به URL Routing هم کاری نداره .


هولایتی
www.hoolity.com

RezaNrzdh
شنبه 01 فروردین 1394, 21:07 عصر
اصلاٌ از Script Manager استفاده نکنید
منم زیاد علاقه ای به اسکریپت منیجر ندارم.

خودتان دستی از Ajax یا اگر از Jquery استفاده می کنید
از jQuery Ajax استفاده میکنم

می تونین پارامتر ها را هم به صفحه Process ( کد سی شارپی که می نویسین) پای بدین و مشکلی نداره
اگه بخوام وب متد ها رو با جی کوئری فراخونی کنم توی URL باید (.aspx) رو هم بنویسم یعنی به این صورت: pagename.aspx/methodname
میخوام بدونم وقتی توی network monitoring کاربر میتونه این متد رو ببینه از نظر امنیتی مشکلی نداره؟ یا حتی توی SEO مشکلی نداره؟ چون دلیل URL Routing این بوده که از Extension دار بودن صفحات جلوگیری بشه.

Mousavmousab
یک شنبه 02 فروردین 1394, 13:33 عصر
توی SEO مشکلی نداره من توی یه سایت خارجی بود که خوندم گفته اتفاقا خیلی هم خوبه ( الان اون یاته یادم نیست)

امنیتشو نمی دونم.!!!
همیشه باید داده های حساس را هم سمت کلاینت و هم در سمت Server برسی کرد.