java发送get请求和post请求示例

时间:2022-01-30 10:45:52 

java向服务端发送GET和POST请求


package com.hongyuan.test;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.HttpURLConnection;
import java.net.URL;

public class HttpClient {
 //发送一个GET请求
 public static String get(String path) throws Exception{
  HttpURLConnection httpConn=null;
  BufferedReader in=null;
  try {
   URL url=new URL(path);
   httpConn=(HttpURLConnection)url.openConnection();

   //读取响应
   if(httpConn.getResponseCode()==HttpURLConnection.HTTP_OK){
    StringBuffer content=new StringBuffer();
    String tempStr="";
    in=new BufferedReader(new InputStreamReader(httpConn.getInputStream()));
    while((tempStr=in.readLine())!=null){
     content.append(tempStr);
    }
    return content.toString();
   }else{
    throw new Exception("请求出现了问题!");
   }
  } catch (IOException e) {
   e.printStackTrace();
  }finally{
   in.close();
   httpConn.disconnect();
  }
  return null;
 }
 //发送一个GET请求,参数形式key1=value1&key2=value2...
 public static String post(String path,String params) throws Exception{
  HttpURLConnection httpConn=null;
  BufferedReader in=null;
  PrintWriter out=null;
  try {
   URL url=new URL(path);
   httpConn=(HttpURLConnection)url.openConnection();
   httpConn.setRequestMethod("POST");
   httpConn.setDoInput(true);
   httpConn.setDoOutput(true);

   //发送post请求参数
   out=new PrintWriter(httpConn.getOutputStream());
   out.println(params);
   out.flush();

   //读取响应
   if(httpConn.getResponseCode()==HttpURLConnection.HTTP_OK){
    StringBuffer content=new StringBuffer();
    String tempStr="";
    in=new BufferedReader(new InputStreamReader(httpConn.getInputStream()));
    while((tempStr=in.readLine())!=null){
     content.append(tempStr);
    }
    return content.toString();
   }else{
    throw new Exception("请求出现了问题!");
   }
  } catch (IOException e) {
   e.printStackTrace();
  }finally{
   in.close();
   out.close();
   httpConn.disconnect();
  }
  return null;
 }

 public static void main(String[] args) throws Exception {
  //String resMessage=HttpClient.get("http://localhost:3000/hello?hello=hello get");
  String resMessage=HttpClient.post("http://localhost:3000/hello", "hello=hello post");
  System.out.println(resMessage);
 }

}

标签:java,get,post
0
投稿

猜你喜欢

  • C# params可变参数的使用注意详析

    2021-10-29 12:33:27
  • C#取得随机颜色的方法

    2021-11-29 08:06:56
  • 深入解析Spring Cloud内置的Zuul过滤器

    2022-05-16 12:49:04
  • java字符串的重要使用方法以及实例

    2023-11-13 23:11:51
  • Java命令设计模式优雅解耦命令和执行提高代码可维护性

    2023-11-23 06:25:46
  • Java多线程的其他知识_动力节点Java学院整理

    2023-09-06 06:01:58
  • 使用maven profile指定配置文件打包适用多环境的方法

    2022-06-30 03:49:11
  • Java8中Optional类型和Kotlin中可空类型的使用对比

    2023-07-29 07:49:21
  • 使用java为pdf添加书签的方法(pdf书签制作)

    2022-03-07 14:59:11
  • Android实现登陆页logo随键盘收放动态伸缩(完美解决键盘弹出遮挡控件的问题)

    2022-05-25 04:13:26
  • C#端口转发用法详解

    2022-09-05 08:47:08
  • Android 应用中插入广告详解及简单实例

    2022-11-22 20:40:04
  • C#使用第三方组件生成二维码汇总

    2023-10-03 22:15:21
  • 深入理解C#管道式编程

    2023-03-18 20:54:25
  • JAVA如何定义构造函数过程解析

    2023-11-04 08:15:09
  • IntelliJ IDEA 创建spring boot 的Hello World 项目(图解)

    2023-03-10 16:13:45
  • Java常量池知识点总结

    2023-01-09 10:23:09
  • Java中的回调

    2023-11-16 01:55:58
  • iOS实现从背景图中取色的代码

    2023-07-06 15:18:32
  • 在Java中避免NullPointerException的解决方案

    2023-10-17 04:47:00
  • asp之家 软件编程 m.aspxhome.com