View Full Version : سوال: استخراج متن از url
Hamid.zaeimpoor
جمعه 05 فروردین 1390, 12:01 عصر
کاربر آدرس www.mysite.com/note (http://www.mysite.com/note) رو در نوار آدرس وارد میکنه چجوری میشه note را در page load گرفت؟
syringa
جمعه 05 فروردین 1390, 13:26 عصر
با سلام
protected void Page_Load(object sender, EventArgs e)
{
string[] str = Request.Url.ToString().Split('/');
string s = str[str.Length - 1];
}
ممکنه راه حل های بهتری هم وجود داشته باشه که بنده ندونم.
موفق باشید ...
arta.nasiri
جمعه 05 فروردین 1390, 13:40 عصر
کاربر آدرس www.mysite.com/note (http://www.mysite.com/note) رو در نوار آدرس وارد میکنه چجوری میشه note را در page load گرفت؟
سلام دوست عزیز
اگه این کار رو برای رسیدن به این (http://barnamenevis.org/showthread.php?279803-%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF-%DB%8C%DA%A9-%D9%BE%D9%88%D8%B4%D9%87-%D8%A8%D8%B1%D8%A7%DB%8C-%D9%87%D8%B1-%D8%B9%D8%B6%D9%88-%D8%A8%D9%87-%D8%B5%D9%88%D8%B1%D8%AA-%DA%A9%D8%AF%DB%8C%D9%86%DA%AF) هدفتون ایجاد کردین بهتره بگم باز هم شما باید از همون Url Rewriting استفاده کنید! چون اگه شما مسیر رو اینجوری ایجاد کنید با خطا مواجه میشن یک مثال بزنم اینطوری میتونم مفهوم رو برسونم
ببینید مثلا شما برای شناسایی یا واکشی اطلاعات کاربر هاتون از این آدرس استفاده میکنید
www.yoursite.com/users.aspx?username=test
شما میتونین با Url Rewriting به همین آدرس بالا برسین مثلا
www.yoursite.com/test
حالا چجوری میرسین بستگی به نحوه کدنویسی و همچنین تنظیماتتون داره !
اینم یک سایت برای آشنایی بیشتر با این مبحث
http://urlrewriting.net
Hamid.zaeimpoor
جمعه 05 فروردین 1390, 14:04 عصر
سلام دوست عزیز
اگه این کار رو برای رسیدن به این (http://barnamenevis.org/showthread.php?279803-%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF-%DB%8C%DA%A9-%D9%BE%D9%88%D8%B4%D9%87-%D8%A8%D8%B1%D8%A7%DB%8C-%D9%87%D8%B1-%D8%B9%D8%B6%D9%88-%D8%A8%D9%87-%D8%B5%D9%88%D8%B1%D8%AA-%DA%A9%D8%AF%DB%8C%D9%86%DA%AF) هدفتون ایجاد کردین بهتره بگم باز هم شما باید از همون Url Rewriting استفاده کنید! چون اگه شما مسیر رو اینجوری ایجاد کنید با خطا مواجه میشن یک مثال بزنم اینطوری میتونم مفهوم رو برسونم
ببینید مثلا شما برای شناسایی یا واکشی اطلاعات کاربر هاتون از این آدرس استفاده میکنید
www.yoursite.com/users.aspx?username=test
شما میتونین با Url Rewriting به همین آدرس بالا برسین مثلا
www.yoursite.com/test
حالا چجوری میرسین بستگی به نحوه کدنویسی و همچنین تنظیماتتون داره !
اینم یک سایت برای آشنایی بیشتر با این مبحث
http://urlrewriting.net
ممنون از grlearn
مشکل روش syringa چیه ؟ اینجوری ما به هدفمون می رسیم دیگه؟
arta.nasiri
جمعه 05 فروردین 1390, 14:23 عصر
اون روش رو تست نکردم ولی به احتمل زیاد ارور The page cannot be found بده !
raziee
جمعه 05 فروردین 1390, 16:35 عصر
اون روش رو تست نکردم ولی به احتمل زیاد ارور The page cannot be found بده !
grlearn عزیز شما به یک موضوع توجهی نمیکنید.
شما در حالت عادی نمیتونید به :
www.yoursite.com/test
برسید!!!!!!!
و علت هم اینه که IIS فایل هایی که مربوط به دات نت نمیشه رو به برنامه شما نمیده!!
و برای اینکه بتونید پسوند فایل ها رو تغییر بدید (یا به طور کامل پسوند رو بردارید) باید به کمک isapi rewrite این کار رو انجام بدید.
Hamid.zaeimpoor
جمعه 05 فروردین 1390, 17:25 عصر
خوب ما باید چیکار کنیم؟
این روشرو پیدا کردم ولی همیشه باید یه چیزه تکراری توی آدرس باشه!
<rewriter>
<rewrite url="page-(.+).aspx" to="Show.aspx?pageid=$1"/>
</rewriter>
در این مثال همیشه page- توی آدرس هست و نمیشه حرفش کرد (میشه تغییر داد یا عوضش کردولی کامل حذف نمیشه) من میخواموقتی کاربر نوار آدرس تایپ میکنه mysite.com/hamid اطلاعات خود حمید رو ببینه مثل فیس بوک!!
arta.nasiri
جمعه 05 فروردین 1390, 17:38 عصر
grlearn عزیز شما به یک موضوع توجهی نمیکنید.
شما در حالت عادی نمیتونید به :
www.yoursite.com/test
برسید!!!!!!!
و علت هم اینه که IIS فایل هایی که مربوط به دات نت نمیشه رو به برنامه شما نمیده!!
و برای اینکه بتونید پسوند فایل ها رو تغییر بدید (یا به طور کامل پسوند رو بردارید) باید به کمک isapi rewrite این کار رو انجام بدید.
سلام
جناب raziee عزیز منم همینو میگم دیگه!
روشی که تو پست دوم گفته شده ! ارور The page cannot be found میده ! منظورم اون روش بود.
raziee
جمعه 05 فروردین 1390, 18:18 عصر
سلام
جناب raziee عزیز منم همینو میگم دیگه!
روشی که تو پست دوم گفته شده ! ارور The page cannot be found میده ! منظورم اون روش بود.
دوست من روشی که شما میفرمایید یعنی استفاده از URL Rewrting هم اگر پسوند .aspx نباشه به خطا همراه خواهد بود.
خوب ما باید چیکار کنیم؟
این روشرو پیدا کردم ولی همیشه باید یه چیزه تکراری توی آدرس باشه!
<rewriter>
<rewrite url="page-(.+).aspx" to="Show.aspx?pageid=$1"/>
</rewriter>
در این مثال همیشه page- توی آدرس هست و نمیشه حرفش کرد (میشه تغییر داد یا عوضش کردولی کامل حذف نمیشه) من میخواموقتی کاربر نوار آدرس تایپ میکنه mysite.com/hamid اطلاعات خود حمید رو ببینه مثل فیس بوک!!
دوست من page-(.+).aspx یک regex pattern هست. شما میتونید هر الگویی رو که دوست دارید بنویسید. در مورد regular expression جستجو کنید.
موضوع اینجاست که اگه الگوی (.+).aspx رو بنویسید میتونید آدرس رو rewriteکنید. اما الگوی (.+) امکانپذیر نیست به خاطر حذف پسوند aspx:
علت هم اینه که IIS فایل هایی که مربوط به دات نت نمیشه رو به برنامه شما نمیده!!
برای اینکه بتونید پسوند فایل ها رو تغییر بدید (یا به طور کامل پسوند رو بردارید) باید به کمک isapi rewrite این کار رو انجام بدید.
در نتیجه :
شما باید urlrewriting رو یادبگیرید و بعد به IIS بفهمونید که تمام درخواست ها رو به برنامه شما بده و بررسی روی فایل ها انجام نده.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.