我正在使用C#在asp.net上的移动充值门户网站上工作。移动运营商使用USSD代码和其他参数点击我提供的网址进行充值,我读取参数响应主题我们的响应。这里我的问题是USSD代码。因为USSD代码具有(#)值,并且当我访问服务器端的参数时(#)之后无法读取值。有没有其他方法来读取所有查询字符串值(通过JavaScript或任何其他)并将其发布到服务器端? 任何帮助将不胜感激。提前致谢。 以下是我带参数的网址
http://192.168.1.1/page.aspx??dlg_id=1233&short_code=*123*1#&req_text=1&msisdn=93987654320&session_id=USSD1234&concat_req_string=987*1#&date_time=&circle_id=0019&dcs=0&curr_menu=MENU
答案 0 :(得分:1)
您可以使用javascript在浏览器中对查询进行Url编码并在服务器上进行解码。
var uri = "dlg_id=1233&short_code=*123*1#&req_text=1&msisdn=93987654320&session_id=USSD1234&concat_req_string=987*1#&date_time=&circle_id=0019&dcs=0&curr_menu=MENU";
var res = encodeURI(uri);
结果将是:
dlg_id%3D1233%26short_code%3D*123*1%23%26req_text%3D1%26msisdn%3D93987654320%26session_id%3DUSSD1234%26concat_req_string%3D987*1%23%26date_time%3D%26circle_id%3D0019%26dcs%3D0%26curr_menu%3DMENU