c# URL查询字符串参数在FireFox或Chrome中无法正确解析
本文关键字:Chrome 查询 URL 字符串 参数 FireFox | 更新日期: 2023-09-27 18:05:53
我的代码中有一个函数用于在SSRS中打开各种报告,它可能需要也可能不需要接受参数。我像下面这样传递URL和参数:
var reportUrl = ConfigurationManager.AppSettings["ReportServerUrl"];
var reportPathComponents = ConfigurationManager.AppSettings["ReportPath"].Split(';');
var reportPath = string.Join("&", reportPathComponents);
return reportUrl + string.Format(reportPath, start.ToShortDateString(), end.ToShortDateString());
可能的输入:
reportturl = "http://ssrs14devreports…"ReportPath = "Report;rs:Command=Render;start={0};end={1}"
这在IE 11中工作得很好,但在最新的Chrome和FireFox浏览器中,它将"&"编码为"&-amp;"。
不确定这是问题,但我不会用"+"号连接两个url,使用
Uri uri = new Uri(new Uri(reportUrl), reportPath);
相反……
检查url并确认你没有两个//而不是一个…