我有一个网页,需要令牌,以显示页面。在页面中,如果用户单击提交按钮,我将使用ajax进行API调用。在参数中,我不确定如何传入显示页面时使用的令牌参数。
例如,我的网页url是http://test.com?token=123
。页面被按钮加载。当用户单击该按钮时,我想对http://test2.com
进行API调用,但使用当前页面的令牌,即123
。
我想这样做的原因是因为当我部署多个pod服务时。我有一个身份验证服务,每次调用API时,它都会使用令牌运行身份验证。
您可以通过下面的代码获得所有的参数作为一个字符串供通用使用
this.location.search
,您可以使用它来创建一个对象,该对象将包含所有参数键作为键,值作为值,此代码适用于所有用例,并接受任何给定数量的参数。
let parm = window.location.search.slice(1).split('=').join(',').split('&').join(',').split(','),
obj = Object.fromEntries(new Array(Math.ceil(parm.length / 2)).fill().map(_ => parm.splice(0, 2)))
// get all parameters as an object
console.log(obj)
// Access the value of a parameter
console.log(obj.key)
使用上面的代码,您可以使用
获得您的令牌console.log(obj.token)
但是如果你不需要完整的代码你可以只使用一个小的样本,只有当你只有一个参数来获取
this.location.search.split('=').pop();