- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
现在重定向只需说
window.location = "/relative_path/";
我想做的是添加一个查询参数和这个重定向,这样目标页面就可以看到它,并且在采取一些行动之后它可以进一步重定向到那个页面。
该用途的示例是登录系统。当用户的 token 过期时,他将被重定向到登录页面。在重定向时,我想将确切的 URL(包括 URL 中的查询参数)传递到登录页面,因此在成功登录后,用户可以准确地重定向回他/她所在的位置。
我尝试将路径作为 URL 参数传递,但由于转义问题而无法正常工作:重定向 url 使用相同的字符 (?, =, ...),这会混淆系统和参数被 chop 。
类似的东西,但这显然行不通:
window.location = "/login?redirect=/original_location?p1=vl1&p2=v2
如有任何建议,我们将不胜感激。
最佳答案
您可以使用 encodeURIComponent()
The encodeURIComponent() method encodes a Uniform Resource Identifier (URI) component by replacing each instance of certain characters by one, two, three, or four escape sequences representing the UTF-8 encoding of the character (will only be four escape sequences for characters composed of two "surrogate" characters).
示例
window.location = "/login?redirect=" + encodeURIComponent("/original_location?p1=vl1&p2=v2")
关于javascript - 如何在 JavaScript 中传递查询参数和重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29092351/
我是一名优秀的程序员,十分优秀!