Ember.js 余烬QueryParams随以“=&引用;性格
我这里有一个相对简单的问题,但还没有找到解决办法。我正在使用Ember并使用查询参数调用路由。代码如下 从“余烬”导入余烬 现在让我们假设我正在使用以下url调用我的路线Ember.js 余烬QueryParams随以“=&引用;性格,ember.js,Ember.js,我这里有一个相对简单的问题,但还没有找到解决办法。我正在使用Ember并使用查询参数调用路由。代码如下 从“余烬”导入余烬 现在让我们假设我正在使用以下url调用我的路线 localhost:4200/index.html#/route1?user_id=123456&custom_lis_person_name_given=hello 现在查询参数的值是 user_id = 123456 custom_lis_person_name_given = hello 现在,如果我将我的u
localhost:4200/index.html#/route1?user_id=123456&custom_lis_person_name_given=hello
现在查询参数的值是
user_id = 123456
custom_lis_person_name_given = hello
现在,如果我将我的url更改为
localhost:4200/index.html#/route1?user_id=12345=6&custom_lis_person_name_given=hello
localhost:4200/index.html#/route1?user_id=123456=&custom_lis_person_name_given=hello
现在,该值计算为
user_id = 12345 or user_id=123456
custom_lis_person_name_given = hello
因此,基本上,该值在查询参数值中看到=符号时结束。有解决办法吗?我需要用户id=“12345=6”或“123456=“
也许控制器或路由中有一些钩子可以做到这一点。我尝试了序列化QueryParam和反序列化QueryParam,但没有效果
提前感谢您是否尝试过:
encodeURIComponent(url)
?
这个人应该做这项工作。请注意,您仍然需要对=
符号进行编码,因此该符号应该是正确的
encdeURI
和encodeURIComponent
之间的区别如下:
在公认的答案中
编辑:
如果您想手动编辑链接并检查其是否有效,只需将
=
替换为%3D
,encodeURIComponent(“=”
)的结果在标记URL之前,我有一个解决方法,即转义queryParameter。我刚刚逃脱了('123456='),成功了。但在应用程序中,url是在后端创建的。如果我能在UI端完全修复它会更好。这种情况就像整个URL(余烬路由+查询参数)是在java文件中生成的,并在浏览器中调用。是的,所以一个解决方案是从java端进行转义(url)。但我想知道我是否可以从UI端本身做些什么。
encodeURIComponent(url)