package com.http.post; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.io.UnsupportedEncodingException; import java.net.HttpURLConnection; import java.net.URL; import java.net.URLEncoder; import java.util.HashMap; import java.util.Map; public class postUtils { private static String PATH = "http://192.168.222.1:1231/loginas.ashx"; private static URL url; public postUtils() { } static { try { url = new URL(PATH); } catch (Exception e) { e.printStackTrace(); } } /** * 通过给定的请求参数和编码格式,获取服务器返回的数据 * @param params 请求参数 * @param encode 编码格式 * @return 获得的字符串 */ public static String sendPostMessage(Map<String, String> params, String encode) { StringBuffer buffer = new StringBuffer(); if (params != null && !params.isEmpty()) { for (Map.Entry<String, String> entry : params.entrySet()) { try { buffer.append(entry.getKey()) .append("=") .append(URLEncoder.encode(entry.getValue(), encode)) .append("&");//请求的参数之间使用&分割。 } catch (UnsupportedEncodingException e) { e.printStackTrace(); } } buffer.deleteCharAt(buffer.length() - 1); System.out.println(buffer.toString()); try { HttpURLConnection urlConnection = (HttpURLConnection) url .openConnection(); urlConnection.setConnectTimeout(3000); //设置允许输入输出 urlConnection.setDoInput(true); urlConnection.setDoOutput(true); byte[] mydata = buffer.toString().getBytes(); //设置请求报文头,设定请求数据类型 urlConnection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); //设置请求数据长度 urlConnection.setRequestProperty("Content-Length", String.valueOf(mydata.length)); //设置POST方式请求数据 urlConnection.setRequestMethod("POST"); OutputStream outputStream = urlConnection.getOutputStream(); outputStream.write(mydata); int responseCode = urlConnection.getResponseCode(); if (responseCode == 200) { return changeInputStream(urlConnection.getInputStream(), encode); } } catch (IOException e) { e.printStackTrace(); } } return ""; } /** * 把服务端返回的输入流转换成字符串格式 * @param inputStream 服务器返回的输入流 * @param encode 编码格式 * @return 解析后的字符串 */ private static String changeInputStream(InputStream inputStream, String encode) { ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); byte[] data = new byte[1024]; int len = 0; String result=""; if (inputStream != null) { try { while ((len = inputStream.read(data)) != -1) { outputStream.write(data,0,len); } result=new String(outputStream.toByteArray(),encode); } catch (IOException e) { e.printStackTrace(); } } return result; } /** * @param args */ public static void main(String[] args) { //通过Map设置请求字符串。 Map<String, String> params = new HashMap<String, String>(); params.put("username", "admin"); params.put("password", "123"); String result=sendPostMessage(params, "utf-8"); System.out.println(result); } }
相关推荐
首先,Java中发送HTTP POST请求通常会用到`HttpURLConnection`类或者第三方库如Apache HttpClient或OkHttp。下面我们将主要使用`HttpURLConnection`来演示,因为它内置在JDK中,无需额外引入依赖。 1. **创建HTTP...
JAVA 调用HTTP接口POST或GET实现方式,java通用
在Java编程环境中,HTTP POST客户端和服务器的交互是网络编程中的常见任务,广泛应用于Web服务、API调用等场景。本篇文章将详细讲解如何使用Java实现HTTP POST客户端和服务器,并探讨相关知识点。 首先,让我们从...
java中用URLConnection类post方式提交表单是指在java应用程序中使用java.net.URLConnection类来实现POST方式的表单提交。POST方式是HTTP协议中的一种常见的请求方法,它允许客户端向服务器发送数据。下面是使用...
java代码-使用java解决带参发送post方式的http请求的源代码 ——学习参考资料:仅用于个人学习使用!
在Java中,可以使用`java.net.URL`、`java.net.HttpURLConnection`或第三方库如Apache HttpClient来构建HTTP POST请求。以下是一个使用HttpURLConnection的基本示例: ```java URL url = new URL(...
java http-post form表单客户端请求代码,拿过去直接应用即可
在Java编程环境中,进行HTTPS POST请求是常见的网络通信任务,特别是在需要安全传输敏感数据时,如用户登录信息或支付详情。HTTPS(HTTP over SSL/TLS)提供了加密和身份验证机制,确保了数据的隐私和完整性。本文将...
对于Java开发者而言,能够熟练地使用Java代码来发送JSON格式的HTTP POST请求是一项必备技能,它不仅能够增强应用的网络通信能力,还能提升与各种RESTful API的交互效率。 #### 1. 使用`HttpURLConnection`发送POST...
在本文中,我们将详细介绍如何使用JAVA的HttpClient库来发送POST请求,以便与HTTPS服务器进行交互。首先,我们需要继承DefaultHttpClient类,以便自定义HttpClient的行为。然后,我们需要使用X509TrustManager来忽略...
本资源库提供了一份完整的JAVA客户端发送POST请求的示例代码,可以帮助您快速了解如何使用JAVA客户端发送POST请求,同时也适用于其他HTTP请求类型。 我们的示例代码包括以下主要部分: 创建HTTP连接:使用Java.net...
以上就是Java中发送HTTP/HTTPS GET和POST请求的基本概念,以及处理JSON数据的方法。在实际应用中,还需要考虑错误处理、性能优化和其他安全因素。如果需要更复杂的功能,建议使用成熟的HTTP客户端库。
java http-post xml格式客户端请求代码
本文将深入探讨如何使用POST方式在.NET中调用.NET和Java编写的Web服务,并以XML作为请求数据格式。以下是对这个主题的详细阐述: 1. **什么是Web服务**: Web服务是一种基于互联网的软件应用,允许不同系统间的...
在 Java 中发送 GET 和 POST 请求是非常常见的操作,今天我们将通过使用 Apache HttpClient 库来实现这些操作。 什么是 Apache HttpClient 库? Apache HttpClient 库是 Apache 软件基金会提供的一个开源库,用于...
在Java中,我们通常使用HttpURLConnection或Apache HttpClient库来实现HTTP POST请求。以下是一个简单的使用HttpURLConnection的例子: ```java import java.io.OutputStream; import java.net.HttpURLConnection; ...
javahttp的简单使用。javaHttp的get与post自带api简单实现。java get post的使用记录
在"java后台实现 get post 提交.zip"这个压缩包中,很可能包含了使用这些方法的实例代码,以及如何将它们集成到实际项目中的指导。如果你想要深入学习Java后端开发,理解并熟练运用GET和POST请求是非常基础且关键的...
Gson的使用方式相对简单,如下所示: ```java Gson gson = new Gson(); String jsonString = gson.toJson(yourJavaObject); YourJavaClass yourObject = gson.fromJson(jsonString, YourJavaClass.class); ```...
java代码-使用java解决http POST请求的源代码 ——学习参考资料:仅用于个人学习使用!