如何在Angularjs中编码一个字符串?

前端之家收集整理的这篇文章主要介绍了如何在Angularjs中编码一个字符串?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我使用Angularjs向我的服务器发送get http请求.服务器使用Spring MVC响应rest请求.这是我的角网址建筑上的代码片段:

var name="myname";
var query= "wo?d";
var url = "/search/"+query+"/"+name;

这里是Spring MVC Controller:

@RequestMapping( value = "/search/{query}/{name}",method = RequestMethod.GET,produces = MediaType.APPLICATION_JSON_VALUE )
@ResponseBody
public List

查询包含问号字符(?)时,我遇到了问题.该URL被拆分,以便Spring响应:
 警告o.s.web.servlet.PageNotFound – 找不到带有URI的HTTP请求的映射[/ my-server / web / search / wo在DispatcherServlet中,名称为’mvc’

这是正确的,因为问号?介绍请求参数的开头.
我试过使用js函数encodeURI(查询),但问号字符没有编码.如何在url中编码问号?
谢谢

最佳答案
Javascript为此目的具有特殊功能encodeURIComponent

encodeURIComponent escapes all characters except the following:
alphabetic,decimal digits,– _ . ! ~ * ‘ ( )

而encodeURI也不编码;,/? :@& = $#个字符.

猜你在找的Spring相关文章