Tag: urlencode

URLEncoder.encode()和空格?

我的服务器上有一个名为的资源: some image.png 名字中有一个空格。 当我在浏览器中键入url(chrome)时,它会将空间转换为%20: some%20.png 当我从我的应用程序中使用URLEncoder.encode(“some image.png”)时,我得到: some+image.png 导致404.编码的正确方法是什么?

java中的url编码?

我想知道什么是url编码 。 我有2个jsp页面和一个servlet。 当我运行应用程序时,显示的URL是: http://localhost:8080/myproject/index.jsp 哪里 index.jsp: 单击提交按钮后,显示的URL为: http://localhost:8080/myproject/Myservlet URL编码是什么意思? 我该如何编码url? 从index.jsp转到Myservlet然后转到Myservlet Myservet #doPost //我需要在这里进行URL编码吗? 如果有,怎么样? fetching data from db……. ……………….. String nextJSP = “/result.jsp”; RequestDispatcher dispatcher = getServletContext().getRequestDispatcher(nextJSP); dispatcher.forward(request,response); result.jsp中 displays data here

在Jersey Client 2中编码花括号

我们正在使用Jersey Client 2.21。 我注意到,当我们将花括号(又名花括号)作为参数值时,它不会被正确编码。 不仅如此,花括号内的任何内容都不会被编码。 对于我测试过的常规括号或其他不安全字符,情况并非如此。 请参阅下面的示例。 在这个例子中,我输入三个参数。 一个只有空格的控制参数。 一个用花括号,一个用常规括号。 public static void testJerseyEncoding() { Client client = ClientBuilder.newClient(); String url = “http://foo.com/path”; Map map = new HashMap(); map.put(“paramWithCurly”, ” {with a space}”); map.put(“paramWithOutCurly”, “with a space”); map.put(“paramWithBracket”, “[with a space]”); WebTarget target = client.target(url); for (Map.Entry entry : map.entrySet()) { target = target.queryParam(entry.getKey(), entry.getValue()); […]

是否有一个通用的Java库来处理字符串集合的URL编码/解码?

我经常需要对大型集合或字符串数​​组进行url编码或解码。 除了遍历它们并使用静态URLDecoder.decode(字符串,“UTF-8”)之外,是否有任何库可以使这种类型的操作更高效? 一位同事坚持使用静态方法就地解码字符串不是线程安全的。 那为什么会这样?

有关URLEncoder和URLDecoder的一些问题?

我已经通过URLEncoder和URLDecoder的javadocs了。 然后变得更加好奇。 将服务器视为tomcat。在任何web应用程序中,每当我们提交表单时,服务器都会将表单字段转换为urlencoded字段,并在我们执行request.getParamter(“fieldName”)时。 服务器再次使用URLDecoder对其进行解码。 那是对的吗? 服务器是做它还是浏览器? 我们在地址栏中键入任何url时会发生相同的事情吗? 如果我们需要在URLEncoder和URLDecoder的帮助下显式编码或解码请求参数,服务器或浏览器会这样做吗? 虽然这些是基本问题,但无法清楚地找到这些答案。

用于将JSON转换为urlencoded的库

我们正在对一个非常不一致的(Zurmo-)REST API进行一些集成。 API仅接受urlencoded字符串作为httppost中的有效负载,但它以JSON回答。 因为文档对此非常不清楚,我们自然认为我们可以将JSON发布到它,但事实并非如此。 所以现在我们所有的代码都生成JSON,当我们需要将它发送为x-www-form-urlencoded时,是否有任何java库可以从JSON转换为urlencoded字符串? 我们目前正在使用org.json lib,但如果需要它我们可以更改它。 例: 这个JSON字符串: {“data”:{“description”:”test”,”occurredOnDateTime”:”2013-10-24 01:44:50″}} 应该转换成这个: data%5Bdescription%5D=test&data%5BoccurredOnDateTime%5D=2013-10-24+01%3A44%3A50 Java代码: 我们将rasmushaglunds javascript代码翻译成java并将其包装起来,如果有其他人偶然发现这个问题,这就是结果。 public static String jsonToURLEncoding(JSONObject json) { String output = “”; String[] keys = JSONObject.getNames(json); for (String currKey : keys) output += jsonToURLEncodingAux(json.get(currKey), currKey); return output.substring(0, output.length()-1); } private static String jsonToURLEncodingAux(Object json, String prefix) { String output = “”; […]

URL编码和解码Java中的特殊字符

在Java中,我需要使用HTTP Post向服务器发送请求,但是如果在URL的参数中包含一些特殊字符,则会抛出以下exception java.lang.IllegalArgumentException:URLDecoder:转义(%)模式中的非法hex字符 – 对于输入字符串:“&’” 发送数据的代码 DefaultHttpClient httpclient = new DefaultHttpClient(); HttpPost httpPost = new HttpPost(URL); String sessionId = RequestUtil.getRequest().getSession().getId(); String data = arg.getData().toString(); List params = new ArrayList(); params.add(new BasicNameValuePair(param1, data)); params.add(new BasicNameValuePair(param2, sessionId)); httpPost.setEntity(new UrlEncodedFormEntity(params, “UTF-8”)); HttpResponse response = (HttpResponse) httpclient.execute(httpPost); 在服务器端,我使用以下代码来读取信息 String data = request.getParameter(param1); if (data != null) { actionArg = […]

将字符串解析为URL

如何解析动态字符串值以创建URL实例? 我需要用%20 ,重音符号,非ASCII字符替换空格……? 我试图使用URLEncoder但它也编码/字符,如果我将一个用URLEncoder编码的字符串给URL构造函数,我得到一个MalformedURLException (没有协议)。