我希望人们能够访问:
http://example.com/report/http://yourdomain.com
在该URL处,我的angular2应用程序将生成有关用户域的报告。我希望它能像这样工作,这样非技术用户就可以轻松输入。
在我的应用中,我正在使用这条路线:
{ path: 'report/:url', component: MyReportComponent }
如果路线中有正斜杠或句号,则此功能无效。
如果我对冒号和正斜杠进行编码,我可以使用Navigate(encodedUrl)
并且它会起作用,但如果我尝试直接访问编码路径,那么除非我删除句点,否则它将无效。
对于我的报告,我更愿意使用该协议,但我发现即使试图让http://example.com/report/yourdomain.com
因为这段时间而无效。
如果我执行http://example.com/report;yourdomain.com
,那么当我通过Navigate()移动它时它可以工作,我可以将其作为查询参数读取,但如果用户直接用句点输入或尝试http://example.com/report;http://yourdomain.com
它不起作用。对于大多数用户来说,半冒号也会显得很奇怪(如果它输入的话就是这样)。
我在其他网站上看到过这种情况,例如:color此网址正常。
我是否遇到了Angular2s路由的限制,还是有办法实现这一目标?当然,有一种方法可以允许参数中的句点至少