我正在使用.NET页面路由(而非MVC)在我的网站上获取漂亮的URL(或至少删除文件扩展名)。
在我的搜索页面上,当用户搜索“stuff”时,它会重定向到/ search / stuff以获取结果。但是,当我输入“stuff yes:”之类的内容时,它会给我一个HTTP 400 Bad Request Error。
我尝试在提交之前使用javascript对搜索值进行编码,并确认“stuff yes:”已转换为“staff%20yes%3A”,但当它执行路由重定向时,在URL中显示“staff” %20yes:“并导致错误的请求。为什么不保存通常非法字符的编码,我该怎么做呢?
答案 0 :(得分:1)
嗯。是否有可能发生这种情况,因为:
始终是URI中的非法字符?例如,
foo://username:password@example.com:8042
我可能会到达,但这是一个想法。