วิธีแก้ปัญหาสำหรับ URL ที่ผ่านภาษาจีน
1. ตั้งค่าไฟล์ web.config (ไม่ชอบที่มันจัดแบบนี้)
<system.เว็บ>
-
< globalization requestEncoding = "gb2312" responseEncoding = "gb2312" วัฒนธรรม = "zh-CN" fileEncoding = "gb2312" />
-
</system.เว็บ>
2. ก่อนที่จะส่งภาษาจีน ให้เข้ารหัสพารามิเตอร์ภาษาจีนที่จะส่ง จากนั้นถอดรหัสเมื่อได้รับ
>> ทำการโอนเงิน
ชื่อสตริง = "พารามิเตอร์ภาษาจีน";
Response.Redirect("B.aspx?Name="+Server.UrlEncode(ชื่อ));
>> เพื่อรับ
ชื่อสตริง = Request.QueryString["ชื่อ"];
Response.Write(Server.UrlDecode(Name));
3. หากพารามิเตอร์ภาษาจีนถูกส่งจากไฟล์ .HTML ไปยังไฟล์ .Aspx (นั่นคือ จะไม่ใช้เมธอด Redirect() จากพื้นหลังเพื่อทำการแปลง Url) . พารามิเตอร์ภาษาจีนที่ส่งผ่านจะต้องได้รับการเข้ารหัสแล้วถอดรหัสเมื่อได้รับ
>> ทำการโอนเงิน
<ภาษาสคริปต์ = "จาวาสคริปต์">
ฟังก์ชั่น GoUrl()
-
ชื่อ var = "พารามิเตอร์ภาษาจีน";
location.href = "B.aspx?Name="+escape(ชื่อ);
-
</สคริปต์>
<body onclick="GoUrl()">
>> เพื่อรับ
ชื่อสตริง = Request.QueryString["ชื่อ"];
Response.Write (Server.UrlDecode (ชื่อ));
โดยทั่วไป เพียงตั้งค่าไฟล์ web.config แต่ถ้าคุณใช้ JavaScript เพื่อเรียกใช้เมธอดบริการเว็บ (ส่งพารามิเตอร์ภาษาจีนไปยังบริการเว็บ) ดูเหมือนว่าการตั้งค่าไฟล์ web.config จะไม่ถูกต้อง
-------------------------------------------------- -------------------------------------------------- -------------
ความเห็นส่วนตัวของผม ขอคำแนะนำเพิ่มเติมครับ