如何在JavaScript中传递查询参数和重定向
How to pass a query parameter along with a redirect in JavaScript
现在重定向只需说
window.location = "/relative_path/";
我想做的是在重定向的同时添加一个查询参数,这样目标页面就可以查看它,并且在采取一些操作后,它可以进一步重定向到该页面。
例如登录系统。当用户的令牌过期时,他将被重定向到登录页面。在重定向时,我想将确切的URL(包括URL中的查询参数)传递到登录页面,这样在成功登录后,用户可以被重定向回他/她所在的位置。
我试图将路径作为URL参数传递,但由于转义问题,这不起作用:重定向URL使用相同的字符(?,=,…),这会混淆系统,并且参数会被截断。
所以类似的东西,但这显然不起作用:
window.location = "/login?redirect=/original_location?p1=vl1&p2=v2
欢迎提出任何建议。我试过encodeURI()
,但没用。
您可以使用encodeURIComponent()
encodeURIComponent()方法通过将某些字符的每个实例替换为一个、两个、三个或四个转义序列来编码统一资源标识符(URI)组件,这些转义序列表示字符的UTF-8编码(对于由两个"代理"字符组成的字符,只有四个转义顺序)。
示例
window.location = "/login?redirect=" + encodeURIComponent("/original_location?p1=vl1&p2=v2")
相关文章:
- 如何将参数赋予作为查询参数的参数值给定的函数
- 具有可选'/'s和查询参数
- 如果没有Ember中的控制器,我如何更改查询参数
- 如何编码&在不是't是查询参数的一部分
- 如何在JavaScript中传递查询参数和重定向
- React 路由器和任意查询参数:页面在加载时无意中刷新
- MongoDB查找查询参数
- 布尔查询参数被 Sails.js 视为字符串
- jQuery脚本,它搜索现有的查询参数并且不添加“"如果存在
- 基于查询参数的可选承诺步骤
- 如何使用Backbone.Return捕获查询参数的更改
- 在iron router中使用查询参数修改模板
- 如何将查询参数设置为我的所有路线,当它改变时-在恩伯
- 如何使用查询参数在jQuery中生成url
- Javascript/jQuery URL查询参数解析
- Ember.js查询参数不尊重replace:true并使用replaceState
- jQuery将查询参数附加到当前哈希中,忽略重复项
- window.location.href未设置查询参数
- 如何在angular中访问URL中的查询参数(在hash之外,非html 5模式)
- 获取具有主干木偶查询参数的当前 URL