Java WebResource put删除'+';请求实体的字符
我有一个客户端Web服务,它使用jersey.api并与另一个RESTful应用程序通信。 我将json数据从javascript发送到客户机,然后它发送到应用程序“服务器” 问题是,当我从客户机接收数据时,字符“+”就在那里,当我执行方法put将请求发送到服务器时,它也在那里。但是当我获取UriInfo(在“server”WS中)并查看请求属性时,“+”字符消失了 我试着调试我的应用程序以发现bug,但似乎错误出在jersey端的一些参数转换中 有人能帮我吗Java WebResource put删除'+';请求实体的字符,java,json,jax-rs,Java,Json,Jax Rs,我有一个客户端Web服务,它使用jersey.api并与另一个RESTful应用程序通信。 我将json数据从javascript发送到客户机,然后它发送到应用程序“服务器” 问题是,当我从客户机接收数据时,字符“+”就在那里,当我执行方法put将请求发送到服务器时,它也在那里。但是当我获取UriInfo(在“server”WS中)并查看请求属性时,“+”字符消失了 我试着调试我的应用程序以发现bug,但似乎错误出在jersey端的一些参数转换中 有人能帮我吗 case PUT: resp
case PUT:
response = resource.accept(types).entity(requestEntity, entityContentType).put(String.class);
break;
这是将请求发送到服务器的方法
@PUT
@Consumes( { MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
@Produces( { MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
@Path("method/{param}/{p}")
public WSResponse method(@Context UriInfo info,
如何在“服务器”上接收请求您需要对该符号进行URL编码,因为
+
被用作空格。文字加号的正确URL编码为%2B
。您可能应该在urlencode text mean whitespaceexpansing on@talex'注释中使用类似于from的实用程序。+:您需要对+
字符进行编码,例如,在客户端将其替换为%2B
。