假设我有这个网页:
http ://ww.xyz.com/Product.aspx?CategoryId=1
如果 CategoryId=1 的名称是“Dogs”,我想将 URL 转换为如下内容:
http ://ww.xyz.com/Products/Dogs
问题是类别名称是否包含外来(或对 url 无效)字符。如果 CategoryId=2 的名称是“Göra äldre”,那么新的 url 应该是什么?
从逻辑上讲,它应该是:
http: //ww.xyz.com/Products/Göra äldre
但它不起作用。首先是因为空格(例如,我可以很容易地用破折号替换)但是外来字符呢?在 Asp.net 中,我可以使用 URLEncode 函数,它会给出这样的结果:
http
://ww.xyz.com/Products/G%c3%b6ra+%c3%a4ldre
但我真的不能说它比原来的更好网址(http://ww.xyz.com/Product.aspx?CategoryId=2)
理想情况下,我想生成这个,但我怎样才能自动执行此操作(即将外来字符转换为“安全”url 字符):
http ://ww.xyz.com/Products/Gora-aldre