如何在路线中使用URL?

时间:2017-03-10 21:46:14

标签: javascript angular

我希望人们能够访问:

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路由的限制,还是有办法实现这一目标?当然,有一种方法可以允许参数中的句点至少

0 个答案:

没有答案