`
wusuoya
  • 浏览: 641268 次
  • 性别: Icon_minigender_2
  • 来自: 成都
社区版块
存档分类
最新评论

java如何得到GET和POST请求URL和参数列表

    博客分类:
  • SSH
 
阅读更多

在servlet中GET请求可以通过HttpServletRequest的getRequestURL方法和getQueryString()得到完整的请求路径和请求所有参数列表,POST的需要getParameterMap()方法遍历得到,不论GET或POST都可以通过getRequestURL+getParameterMap()来得到请求完整路径

 

[java] view plaincopy在CODE上查看代码片派生到我的代码片
 
  1. package com.zuidaima                          
  2. import java.io.IOException;  
  3. import java.io.PrintWriter;  
  4. import java.util.Map;  
  5.   
  6. import javax.servlet.ServletException;  
  7. import javax.servlet.http.HttpServlet;  
  8. import javax.servlet.http.HttpServletRequest;  
  9. import javax.servlet.http.HttpServletResponse;  
  10.   
  11. public class GetParams extends HttpServlet {  
  12.     private static final long serialVersionUID = 1L;  
  13.   
  14.     public GetParams() {  
  15.         super();  
  16.     }  
  17.   
  18.     protected void doGet(HttpServletRequest request,  
  19.             HttpServletResponse response) throws ServletException, IOException {  
  20.         PrintWriter writer = response.getWriter();  
  21.         writer.println("GET " + request.getRequestURL() + " "  
  22.                 + request.getQueryString());  
  23.   
  24.         Map<String, String[]> params = request.getParameterMap();  
  25.         String queryString = "";  
  26.         for (String key : params.keySet()) {  
  27.             String[] values = params.get(key);  
  28.             for (int i = 0; i < values.length; i++) {  
  29.                 String value = values[i];  
  30.                 queryString += key + "=" + value + "&";  
  31.             }  
  32.         }  
  33.         // 去掉最后一个空格  
  34.         queryString = queryString.substring(0, queryString.length() - 1);  
  35.         writer.println("GET " + request.getRequestURL() + " " + queryString);  
  36.     }  
  37.   
  38.     protected void doPost(HttpServletRequest request,  
  39.             HttpServletResponse response) throws ServletException, IOException {  
  40.         PrintWriter writer = response.getWriter();  
  41.         Map<String, String[]> params = request.getParameterMap();  
  42.         String queryString = "";  
  43.         for (String key : params.keySet()) {  
  44.             String[] values = params.get(key);  
  45.             for (int i = 0; i < values.length; i++) {  
  46.                 String value = values[i];  
  47.                 queryString += key + "=" + value + "&";  
  48.             }  
  49.         }  
  50.         // 去掉最后一个空格  
  51.         queryString = queryString.substring(0, queryString.length() - 1);  
  52.         writer.println("POST " + request.getRequestURL() + " " + queryString);  
  53.     }  
  54. }  
  55.   
分享到:
评论

相关推荐

    Java如何实现URL带请求参数(get/post)及得到get和post请求url和参数列表的方法

    接下来,我们关注如何在Servlet中获取GET和POST请求的URL和参数列表: 1. **获取GET请求的URL和参数**: 在Servlet中,`HttpServletRequest`对象提供了`getRequestURL()`方法返回不包括查询字符串的URL,而`get...

    java HttpClient 发送GET请求和带有表单参数的POST请求教程例子

    ### Java HttpClient 发送GET请求和带有表单参数的POST请求详解 #### 一、概述 在Java编程中,处理HTTP请求是一项常见的需求,特别是在与Web服务进行交互时。Apache HttpClient库提供了一种强大的方法来执行HTTP...

    使用java发送get和post请求实践

    在 Java 中发送 GET 和 POST 请求是非常常见的操作,今天我们将通过使用 Apache HttpClient 库来实现这些操作。 什么是 Apache HttpClient 库? Apache HttpClient 库是 Apache 软件基金会提供的一个开源库,用于...

    java实现get请求post请求,文件传输

    java实现get请求post请求,文件传输 /** * 发送https请求 * @param requestUrl 请求地址 * @param requestMethod 请求方式(GET、POST) * @param outputStr 提交的数据 * @return 返回微信服务器响应的信息 ...

    java 实现get,post请求

    本篇文章将详细介绍如何在Java中实现GET和POST请求,以及相关的知识点。 首先,我们要了解GET和POST的区别。GET请求通常用于获取资源,其参数附加在URL后面,是可见的,且对数据长度有限制,一般不超过2KB。而POST...

    java发送http/https请求(get/post)代码

    本文将详细讲解如何使用Java发送GET和POST请求,以及涉及的HTTPS安全连接。 首先,理解HTTP和HTTPS的区别至关重要。HTTP(超文本传输协议)是一种用于分发超媒体信息的应用层协议,而HTTPS(超文本传输安全协议)是...

    service_java接口远程调用_get、post、带参数远程调用_

    在Java编程中,远程接口调用是分布式系统中常见的通信方式,它允许不同的服务之间进行数据交换和功能调用。...通过这些服务,开发者可以方便地进行远程接口调用,无论是简单的GET请求还是带有复杂参数的POST请求。

    HttpClient模拟get,post请求并发送请求参数(json等)

    对于POST请求,我们需要创建一个HttpPost对象,并设置请求URL。如果需要发送JSON数据,我们可以使用StringEntity: ```java HttpPost httpPost = new HttpPost("http://example.com"); httpPost.setHeader("Accept...

    java发送http/https请求(get/post)Demo,亲测可用

    这里我们将深入探讨如何使用Java发送GET和POST请求,以及处理JSON数据。 首先,让我们关注GET请求。GET请求主要用于从服务器获取资源,其参数通常包含在URL中。在Java中,可以使用`HttpURLConnection`类或者第三方...

    后台模拟发送GET和POST请求

    本文将深入探讨如何利用Java的HttpClient库在后台模拟发送GET和POST请求,以及如何处理中文乱码问题。 首先,我们来理解GET和POST两种请求方法。GET请求通常用于获取服务器上的资源,它将参数附加到URL中,具有可...

    java使用url发送post和get请求:HttpConnUtils.jar

    - `HttpConnUtils.jar`的`sendPostRequest()`方法可能接收URL、请求参数和可能的请求头。它使用`setDoOutput(true)`开启POST写入功能,然后通过`DataOutputStream`写入参数。完成后,读取服务器响应。 3. **参数...

    java发送get或post请求源码

    这里我们将介绍如何使用这两个类以及`java.io`包中的相关类来构建GET和POST请求。 1. **发送GET请求**: GET请求通常用于获取资源,参数包含在URL中。以下是一个简单的示例: ```java import java.io....

    java http post和get请求回调

    这些库提供了方便的方法来执行GET和POST请求,并处理响应。 以`HttpURLConnection`为例,POST请求的实现如下: ```java URL url = new URL("http://example.com"); HttpURLConnection conn = (HttpURLConnection) ...

    http发送Get和Post请求工具类

    在测试类中,一般会创建一个`HttpUtils`实例,然后调用`sendGet`或`sendPost`方法,传入目标URL和(对于POST请求)参数。测试类的目的是验证工具类的功能是否正常工作,通常会打印服务器返回的响应数据。 `...

    java后台实现 get post 提交.zip

    以上代码展示了如何在Java后台实现GET和POST请求的基本过程。在实际应用中,我们通常会使用框架如Spring MVC,它提供了更高级的抽象,使得处理HTTP请求变得更加便捷。Spring MVC允许我们定义控制器方法,这些方法...

    Java Http发起get和post请求

    本篇将详细介绍如何在Java中使用HttpURLConnection和HttpClient库来发起GET和POST请求。 **一、HttpURLConnection使用** 1. **GET请求** 发起GET请求,首先需要建立一个URL对象,然后通过openConnection()方法...

    java发起get、post请求类

    java自己的类中调取别人的接口,get、post请求并得到响应。get请求有url和多个请求头参数。post请求有url和多个请求头参数以及body传递的参数。

    无参数的post请求

    1. **兼容性问题**:不同的Web服务器和框架可能对无参数POST请求的支持程度不同,因此在实际应用前应确保兼容性。 2. **API文档**:如果API接口支持无参数POST请求,应在文档中明确说明这一点,以避免开发者误解。 3...

    (完整版)JAVA利用HttpClient进行POST请求(HTTPS).doc

    在示例代码中,我们使用HttpGet对象来发送POST请求,并指定请求的URL、请求头和请求体。 使用HttpClient发送POST请求可以帮助我们与HTTPS服务器进行交互,但需要注意证书验证过程。使用X509TrustManager可以忽略...

    java发送post和get请求源码及jar包

    这两个例子展示了如何使用Java内置的HttpURLConnection类发送GET和POST请求。然而,对于更复杂的场景,如管理cookies、重定向、超时控制等,使用Apache HttpClient或OkHttp等第三方库可能会更方便和强大。 在实际...

Global site tag (gtag.js) - Google Analytics