您的位置:首页 > 编程语言 > Java开发

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

2017-08-06 18:24 417 查看
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);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: