将片段标识符放入查询参数中
Putting a fragment identifier inside of a query parameter
我正在尝试重定向到一个 URL 路径,其中包含一个名为 next
的查询参数,它本身就是一个包含片段标识符的 URL 路径。这是我试过的 JavaScript 代码:
window.location.href = "/gauth?next=" + window.location.pathname + "#onload=exportToDrive"
为了让自己清楚,#onload=exportToDrive
应该属于 next
URL 路径(不 URL浏览器正在重定向到)。我如何向浏览器指定该信息,以便它正确处理这种情况?
您应该始终正确编码 URL 参数值,使用类似 encodeURIComponent
:
的函数
window.location.href = "/gauth?next=" + encodeURIComponent(window.location.pathname + "#onload=exportToDrive");
这将确保任何片段标识符(以及查询字符串参数)都不会应用于 /gauth
。
我正在尝试重定向到一个 URL 路径,其中包含一个名为 next
的查询参数,它本身就是一个包含片段标识符的 URL 路径。这是我试过的 JavaScript 代码:
window.location.href = "/gauth?next=" + window.location.pathname + "#onload=exportToDrive"
为了让自己清楚,#onload=exportToDrive
应该属于 next
URL 路径(不 URL浏览器正在重定向到)。我如何向浏览器指定该信息,以便它正确处理这种情况?
您应该始终正确编码 URL 参数值,使用类似 encodeURIComponent
:
window.location.href = "/gauth?next=" + encodeURIComponent(window.location.pathname + "#onload=exportToDrive");
这将确保任何片段标识符(以及查询字符串参数)都不会应用于 /gauth
。