我们的搜索页面的网址是这样建立的:
http://www.example.com/results/name/John/city/Miami/gender/Male
这将显示迈阿密的每个男性名叫约翰.
当其中一个过滤器留空时,url将是这样的:
http://www.example.com/results/name/John/city//gender/Male
所以url中有两个斜杠.
Outlook似乎不喜欢这样.当您单击第二个URL时,它会删除两个斜杠中的一个.这留下了这样的网址:
http://www.example.com/results/name/John/city/gender/Male
人们在城市"性别"中命名约翰.
解决这个问题的最佳方法是什么?
这是Microsoft Office中的错误.
RFC 2396允许带有两个连续斜杠的URL ,但它们并不常用.正如RFC所说(摘自附录A):
abs_path = "/" path_segments
path_segments = segment *( "/" segment )
segment = *pchar *( ";" param )
Run Code Online (Sandbox Code Playgroud)
请注意,段定义为包含ZERO OR MORE字符.(你可能会认为这是一个规范错误,它不应该被允许......但它是)
正如您所发现的,Microsoft Office将"修复"包含双斜杠的URL.这显然是"清洁和一致性"的刻意特征.无法覆盖或禁用它.来源.
因此,正如其他人所建议的那样,您可能不得不改变服务器格式化URL的方式.