PDA

View Full Version : سوال: راهنمایی درمورد استفاده از UrlEncode



L_eskandary
یک شنبه 21 آذر 1389, 15:49 عصر
با سلام خدمت دوستان
راستش من باید کل url رو encode کنم و متد urlencode‌فقط کاراکتر های خاص رو encode می کنه . برا اینکه کل url رو encode کنم باید از چه متدی استفاده کنم ؟
البته چیزی که می خوام اینه : مثلا برای //:http باید کد زیر تولید شه :
1b0601ae02056a0045c60c03000103000101
ولی من نمی دونم از چه متدی برا اینکار استفاده شده چون با urlencode کد زیر تولید میشه:
http%3a%2f%2f
چطور می تونم متد encoding کد بالا رو بدست بیارم ؟

b.paseban
یک شنبه 21 آذر 1389, 16:08 عصر
سلام دوست عزیز.
فکر کنم مشکلت با این تاپیک حل بشه.
http://forums.asp.net/t/1530950.aspx
امیدوارم کمکت کرده باشم.

L_eskandary
یک شنبه 21 آذر 1389, 16:30 عصر
سلام دوست عزیز.
فکر کنم مشکلت با این تاپیک حل بشه.
http://forums.asp.net/t/1530950.aspx
امیدوارم کمکت کرده باشم.
سلام دوست عزیز
لینک آدرس فوق ظاهرا معتبر نیست اگه خودتون اطلاعاتی در این زمینه دارین ممنون میشم راهنمایی کنین.

L_eskandary
دوشنبه 22 آذر 1389, 23:48 عصر
با سلام
مثل همیشه من و یه سوال بی پاسخ !!!:متفکر::عصبانی:
از دوستان کسی هست که کد c#‌ معادل کد php‌ زیر رو بدونه ؟
ممنون می شم راهنماییم کنین :




function wap_encode($str)
{
return "%".implode("%", str_split(bin2hex($str), 2));
}
$title = "The Image";

$url = "wap.yahoo.com/test.jpeg"; /*no need to http://*/

$text = "%1B%06%01%AE%02%05%6A%00%45%C6%0C%03".wap_encode($url)."%00%01%03".wap_encode($title)."%00%01%01";

مهدی کرامتی
سه شنبه 23 آذر 1389, 09:17 صبح
اگر کل URL رو Encode کنی چطور میخواهی از آن استفاده کنی؟ Browser ها نمی توانند از آن استفاده کنند تا زمانی که Decode شود.

به هر حال تکه کدهای زیر یک String را به عنوان ورودی گرفته و یک String رمزنگاری شده با روش Base64 را تحویل شما می دهد:

public string Encode(string str)
{
byte[] encbuff = System.Text.Encoding.UTF8.GetBytes(str);
return Convert.ToBase64String(encbuff);
}
public string Decode(string str)
{
byte[] decbuff = Convert.FromBase64String(str);
return System.Text.Encoding.UTF8.GetString(decbuff);
}
تابع معکوس آن نیز گنجانده شده است.

پ.ن: Base64 روش امنی نیست، اگر امنیت خیلی برایتان مهم است از روشهای رمزنگاری دیگری استفاده کنید.

L_eskandary
سه شنبه 23 آذر 1389, 10:14 صبح
با سلام و تشکر بخاطر راهنمایی تون



اگر کل URL رو Encode کنی چطور میخواهی از آن استفاده کنی؟ Browser ها نمی توانند از آن استفاده کنند تا زمانی که Decode شود.


من از وب سرویس شرکت دیگری استفاده می کنم که برای ارسال وپ پوش باید این encoding رو استفاده کنم و طبیعتا خود این شرکت عملیات decode را انجام خواهد داد .

ولی در مورد متدی که نوشتین :
من این روش رو تست کردم ولی پاسخ های دریافتی از این متدها منطبق با پاسخ های دریافتی شرکت ارائه دهنده وب سرویس یکی نبودن :
بعنوان مثال ٍEncode برای //:http معادل (1b0601ae02056a0045c60c03000103000101
) می باشد که با encoding‌ فوق این مقدار به دست نمی آید.
یه سوال : فک نکنم متدهای encoding تو زبانهای برنامه نویسی مختلف جواب های متفاوتی داشته باشن ، درسته ؟