当前位置: 首页 > news >正文

JAVA 通过get,post访问远程接口

get请求 参数拼接在url ?name=value&sex=value

// httpurl=http:127.0.0.1/project
public static String doGet(String httpurl){HttpURLConnection connection = nul;Inputstream is = null;BufferedReader br = null;String result = null;//返回结果字符串try {//创建远程ur连接对象URL url = new URL(httpurl);//通过远程url连接对象打开 个连接,强转成httpURLConnection类connection = (HttpURLConnection)url.openConnection();//设置连接力式:getconnection.setRequestMethod("GET");//设置连接主机服务器的超时时间:15000毫秒connection.setConnectTimeout(15000);//设置读取远程返回的数据时间:60000connection.setReadTimeout(60000);//发送请求connection.connect()://通过connection连接,获取输入流if (connection.getResponseCode()==200){is =connection.getInputStream();//封装输入流is,并指定字符集br= new BufferedReader(new inputStreamReader(is,"UTF-8"));//存放数据StringBuffer sbf = new StringBuffer();String temp = null;while ((temp = br.readline())!= null){sbf.append(temp);sbf.append("\r\n");}result = sbf.toString();}}catch (MalformedURLException e){e.printstackTrace():}catch (IOException e){e.printStackTrace();}finally {//关闭资源if (null != br){try{br.close();}catch(IOException e){e.printStackTrace();}}if(null !=is){try {is.close();}catch(IOException e){e.printStackTrace();}}connection.disconnect()://关闭远程连接}return result,}

post请求 参数json传输,

	//jSONObject aa=new jSONObject();//aa.put("","");//...//param=aa.toString();// httpurl=http:127.0.0.1/project
public static String dopost(string httpUrl ,String param, String token){HttpURLConnection connection=null;InputStream is = null;Outputstream os = null;BufferedReader br-=null ;String result = null,try{URL url = new URL(httpUrl)://通过远程url连接对象打开连接connection = (HttpURLConnection) url.openConnection();//设置连接请求方式connection.setRequestMethod("POST")://设置连接主机服务器超时时间:15000毫秒connection.setConnectTimeout(15000);//设置读取主机服务器返回数据超时时间:60000毫秒connection.setReadTimeout(60000);//默认值为:false,当向远程服务器传送数据/写数据时,需要设置trueconnection.setDoOutput(true);//默认值为:true,当前向远程服务读取数据时,设置为true,该参教可有可无connection.setDoInput(true);// 设置传入参教的格式请求参数应该是json 的形式。connection.setRequestPraperty("Content-Type","application/json);connecion setRequestPraperty("Charsert"."UTF-8");// 设置Token(票眠)信息:Aothorizationif(token != null){connection.setRequestProperty( "Authorization", token);}//通过连接对象获取一个输出流os = connection.getOutputStream();os.write(param.getBytes("UTF-8"));if(connection.getResponseCode() == 200){is = connection.getInputstream();StringBuffer sbf = new StringBuffer();String temp = null;//备环遍历一行一行读取数据while ((temp =br.readline())!= null){sbf.append(temp);sbf.append("\r\n");}result =sbf.toString();} else {System.out.println("连接失败");}}catch (MalformedURLException e){e.printStackTrace():}catch (IOException e){e.printStackTrace();}finally (//关闭资源if (null != br){try{br.close();}catch (IOException e){e.printStackTrace();}}if (null != os){try{os.close():}catch (IOException e){e.printStackTrace();}}if (null != is){try{is.close():}catch (IOException e){e.printStackTrace();}}connecion.disconnect();}return result;}

post 参数json传输,

	//jSONObject aa=new jSONObject(); //aa.put("","");//...//param=aa.toString();// httpurl=http:127.0.0.1/projectpublic static String doGet(String httpurl, String param){String username="123456";String password="123456;String auth=username +":"+password;String encodeAuth=new BASE64Encoder().encode(auth.getBytes());String authHeader="Basic "+encodeAuth;Outputstream os = null;HttpURLConnection connection = nullInputStream is = null;BufferedReader br= nul);String result= null;// 返回结果字符串try{//创建远程url连接对象URL url = new URL(httpurl);//通过远程url连接对象打开一个连接,强转成HttpURLConnectión类connection =(HttpURLConnectión) url.openConnection();//设置连接方式:getconnection.setRequestMethod("GET");//发送http请求时添加Authorization标头connection.setRequestProperty("Authorization",authHeader);//设置连接主机服务器超时时间:15000毫秒connection.setConnectTimeout(15000);//设置读取主机服务器返回数据超时时间:60000毫秒connection.setReadTimeout(60000);//默认值为:false,当向远程服务器传送数据/写数据时,需要设置trueconnection.setDoOutput(true);//默认值为:true,当前向远程服务读取数据时,设置为true,该参教可有可无connection.setDoInput(true);// 设置传入参教的格式请求参数应该是json 的形式。connection setRequestPraperty("Content-Type","application/json);connecion setRequestPraperty("Charsert"."UTF-8");// 通过连接对象获取一个输出流os = connection.getOutputStream();//通过输出流对象将参数写出去/传输出去,它是通过字节数组写出的os.write(param.getBytes("utf-8"));connection.connect();//通过connection连接,获取输入流if (connection.getResponseCode() == 200){is = connection.getInputStream();//封装输入流is,并指定字符集br = new BufferedReader(new inputStreamReader(is, "UTF-8");//存放数据StringBuffer sbf = new StringBuffer();String temp = null;while ((temp = br.readLine()) != nul){	sbf.append(temp):sbf.append("\r\n");}result= sbf.tostring();}}catch (MalformedURLException e){e.printStackTrace();}catch (IOException e){e.printstackTrace();}finally (//关闭资源if (null != br){try{br.close();}I catch (IOException e){e.printStackTrace();}}if (null != os){try{os.close():}catch (IOException e){e.printStackTrace();}}if (null != is){try{is.close():}catch (IOException e){e.printStackTrace();}}connecion.disconnect();}return result;}
http://www.lryc.cn/news/255009.html

相关文章:

  • Spark例子
  • linux下ls和df卡死
  • iOS(swiftui)——系统悬浮窗( 可在其他应用上显示,可实时更新内容)
  • css弹窗动画效果,示例弹窗从底部弹出
  • STM32CubeIDE(CUBE-MX hal库)----RTC时钟,时钟实时显示
  • ubuntu 安装Nvidia驱动
  • 『亚马逊云科技产品测评』活动征文|基于亚马逊云EC2搭建PG开源数据库
  • 【开题报告】基于J2EE的高校水电费管理系统的设计与实现
  • Revisiting Proposal-based Object Detection阅读笔记
  • Docker部署NFS服务
  • 深度学习TensorFlow2基础知识学习后半部分
  • 电脑系统重装Win10专业版操作教程
  • 打包Python项目
  • 使用Python实现爬虫IP负载均衡和高可用集群
  • Jenkins+Maven+Gitlab+Tomcat 自动化构建打包,部署
  • 泰凌微(Telink)8258配置串口收发自定义数据
  • 入门低代码开发:快速构建应用程序的方法
  • 常见客户端消息推送服务【Java后端】
  • C++11(下)
  • 深度学习与逻辑回归模型的融合--TensorFlow多元分类的高级应用
  • 水库大坝安全监测参数与设备
  • 要求CHATGPT高质量回答的艺术:提示工程技术的完整指南—第 22 章:情感分析提示
  • 数据清洗、特征工程和数据可视化、数据挖掘与建模的主要内容
  • C++ STL容器与常用库函数
  • Nmap脚本简介
  • Kafka -- 初识
  • 玩转Sass:掌握数据类型!
  • Django + Matplotlib:实现数据分析显示与下载为PDF或SVG
  • 【Rust】第一节:安装
  • 12-07 周四 Pytorch 使用Visdom 进行可视化