.NET编码页面路由?

时间:2011-01-28 19:36:53

标签: .net asp.net routing url-routing url-encoding

我正在使用.NET页面路由(而非MVC)在我的网站上获取漂亮的URL(或至少删除文件扩展名)。

在我的搜索页面上,当用户搜索“stuff”时,它会重定向到/ search / stuff以获取结果。但是,当我输入“stuff yes:”之类的内容时,它会给我一个HTTP 400 Bad Request Error。

我尝试在提交之前使用javascript对搜索值进行编码,并确认“stuff yes:”已转换为“staff%20yes%3A”,但当它执行路由重定向时,在URL中显示“staff” %20yes:“并导致错误的请求。为什么不保存通常非法字符的编码,我该怎么做呢?

1 个答案:

答案 0 :(得分:1)

嗯。是否有可能发生这种情况,因为: 始终是URI中的非法字符?例如,

foo://username:password@example.com:8042

我可能会到达,但这是一个想法。