kke*_*ley 6 reactjs react-router
您好,反应路由器参数会自动解码字符串吗?
例如我有这条路线
<Route path="/callback/:url"/>
Run Code Online (Sandbox Code Playgroud)
当我用它来称呼它时C5jb20%3D
C5jb20=当我 console.log() 时它会打印该参数
这是预期的行为吗?我可以更改此行为以便仍然获得编码的字符串吗?
谢谢!
C5jb20%3D是 URL 编码字符串,这是对 URL 中的特殊字符进行编码的一种方法。例如,如果您有一个类似 的 URL 参数?redirect=/some/path,服务器可能会将正斜杠解释为路由路径,并扰乱预期的路由。这就是为什么您会在 URL 中看到诸如?redirect=%2Fsome%2Fpath和您的示例之类的内容。
window.location.path将具有原始的、未编码的 URL。
您还可以通过以下方式取回encodeURIComponent:
encodeURIComponent('C5jb20=') // "C5jb20%3D"
Run Code Online (Sandbox Code Playgroud)
不过,您可能不想这样做,具体取决于您的用例。
| 归档时间: |
|
| 查看次数: |
8354 次 |
| 最近记录: |