`

原生http接口传输

 
阅读更多
package com.util;

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

public class Http {
	
	/**
     * 基础类post方法
     * @param requestUrl 请求地址
     * @param requestXml 推送数据字符串
     * @return String 返回数据
     */
	public static String sendPost02(String requestUrl, String requestXml) {
		StringBuilder ret = new StringBuilder();
		HttpURLConnection httpCon;
		try {
			httpCon = (HttpURLConnection) (new URL(requestUrl)).openConnection();
			httpCon.setConnectTimeout(1000 * 30);//设置连接主机超时(单位:毫秒)
			httpCon.setReadTimeout(1000 * 30);//设置从主机读取数据超时(单位:毫秒)
			httpCon.setDoOutput(true);//设置是否向httpUrlConnection输出,因为这个是post请求,参数要放在http正文内,因此需要设为true, 默认情况下是false;   
			httpCon.setDoInput(true);// 设置是否从httpUrlConnection读入,默认情况下是true;
			httpCon.setRequestMethod("POST");// 设定请求的方法为"POST",默认是GET
			httpCon.setUseCaches(false);// Post 请求不能使用缓存
			httpCon.setInstanceFollowRedirects(true);//设置本次连接是否自动处理重定向。设置成true,系统自动处理重定向;设置成false,则需要自己从http reply中分析新的url自己重新连接。
			//setRequestProperty主要是设置HttpURLConnection请求头里面的属性比如Cookie、User-Agent(浏览器类型)等等
			httpCon.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");//application/x-www-form-urlencoded: 窗体数据被编码为名称/值对。这是标准的编码格式。 multipart/form-data: 窗体数据被编码为一条消息,页上的每个控件对应消息中的一个部分。 text/plain: 窗体数据以纯文本形式进行编码,其中不含任何控件或格式字符。
			httpCon.connect();

			DataOutputStream postOut = new DataOutputStream(httpCon.getOutputStream());
			String postContent =   requestXml;
			postOut.write(postContent.getBytes("utf-8"));
			postOut.flush();
			postOut.close();

			if (httpCon.getResponseCode() == HttpURLConnection.HTTP_OK) {
				String readLine = null;
				BufferedReader responseReader = new BufferedReader(new InputStreamReader(httpCon.getInputStream(), "UTF-8"));
				while ((readLine = responseReader.readLine()) != null) {
					ret.append(readLine);
				}
				responseReader.close();
			}
		}
		catch (IOException e) {
			e.printStackTrace();
		}

		return ret.toString();
	}

}

分享到:
评论

相关推荐

    支付宝老版本接口1.0版本

    在实际应用中,为了保证支付的安全性,开发者需要对敏感信息进行加密,如使用RSA或MD5算法进行签名,防止数据在传输过程中被篡改。同时,接口调用还需要处理异常情况,如网络错误、超时、支付失败等,提供合适的错误...

    2021年包更原生安卓影视app苹果CMS对接 原生JAVA影视APP源码

    通过API接口,APP可以实时同步CMS中的内容,无需手动更新。这对于拥有大量视频资源的服务商来说,大大提高了运营效率。 源码中可能包含以下几个关键模块: 1. 用户模块:负责用户注册、登录、个人信息管理等功能,...

    云原生分布式存储基石 etcd深入解析

    5. **etcd的安全性**:etcd支持TLS加密通信,以保护数据在传输过程中的安全性。同时,通过认证授权机制,可以限制不同客户端对etcd资源的访问权限,增强了系统的安全性。 6. **性能优化**:etcd在设计时考虑了性能...

    webservice、soap等接口调用参考

    SOAP消息通常以HTTP或HTTPS作为传输协议,其结构主要由三个部分组成:Header、Body和Envelope。Header部分包含了关于消息处理和路由的信息,Body部分则包含实际的业务数据,Envelope则是包裹整个SOAP消息的外壳,...

    java上传文件接口调用源码案例

    在这个“java上传文件接口调用源码案例”中,我们将探讨Java如何通过HTTP或者HTTPS协议来上传文件,以及如何使用`UrlUtils.java`这样的工具类。 首先,让我们了解一下接口调用的基本概念。接口是一种约定,定义了两...

    微信小程序+原生php实现登录获取openid的功能

    获取到`openid`后,通常还需要获取用户的session_key,用于加密传输用户敏感信息。同时,服务器端应生成session或token,保存用户状态,以便后续接口调用时识别用户身份。 7. **文件`login`的可能用途** 这个`...

    《云原生分布式存储基石 etcd深入解析》_杜军.zip

    用户可以通过HTTP/HTTPS接口进行读写操作。键空间是层级结构,类似于文件系统路径,方便管理和检索。 三、Raft一致性算法 Raft是etcd实现数据复制的核心算法。它简化了Paxos算法,使得理解和实现更容易。在Raft中,...

    Android手机之间的视频传输

    总的来说,实现Android手机之间的视频传输需要掌握网络编程、多媒体处理、实时通信协议、Android系统API以及可能的原生编程技巧。这一过程涉及到的技术复杂且广泛,但通过合理的设计和优化,可以为用户带来流畅的...

    nodejs使用原生的dubbo协议打通了dubbo的rpc方法调用.

    标题中的“nodejs使用原生的dubbo协议打通了dubbo的rpc方法调用”意味着在Node.js环境中,开发者成功地实现了对Dubbo服务的RPC(远程过程调用)访问,利用了Dubbo协议的特性。Dubbo是阿里巴巴开源的一个高性能、轻量...

    安卓调用webservice接口

    例如,使用`Retrofit`,需要定义服务接口,配置Gson或Jackson转换器,然后创建实例,通过注解指定HTTP方法和URL路径,调用相应方法并传递参数。 3. **数据解析**: - 对于SOAP,响应通常是XML格式,可以使用`Ksoap...

    socket通信 文件传输等的功能

    在文件传输方面,Socket通信通常用于实现自定义的文件传输协议,例如FTP(文件传输协议)和HTTP(超文本传输协议)的底层就是基于Socket实现的。通过Socket,我们可以构建一个客户端-服务器模型,其中客户端发起请求...

    Java文件传输工具(SFTP、FTP、HTTP上传下载)

    在Java编程领域,文件传输是常见的任务之一,涵盖了多种协议,如SFTP(Secure File Transfer Protocol)、FTP(File Transfer Protocol)和HTTP(Hypertext Transfer Protocol)。这些协议各有特点,适用于不同的...

    android 原生API官方文档部分汉化

    除此之外,Volley、Retrofit等第三方库也广泛应用于网络数据的获取和传输。 5. **数据存储**:Android提供了SQLite数据库,用于持久化数据存储。此外,SharedPreferences用于轻量级的配置数据存储,File I/O则用于...

    Js原生ajax与跨域(代理)上传文件

    随着XML的应用逐渐减少,现在AJAX更多地是用于传输JSON或其他文本格式的数据。本话题主要探讨如何使用JS原生的XMLHttpRequest对象实现AJAX请求,并解决跨域问题,特别是涉及到文件上传的场景。 首先,让我们了解...

    具有HTTP请求接口的OPC-DA客户端

    标题中的“具有HTTP请求接口的OPC-DA客户端”指的是一个软件工具,它允许用户通过HTTP(超文本传输协议)接口与OPC DA(OLE for Process Control - Data Access)服务器进行交互。OPC DA是工业自动化领域的一个标准...

    各类接口定义说明

    HDMI接口则用于传输高质量音频和视频信号,常见于电视和多媒体设备。串口和并口是较老的通信接口,串口通过一条数据线发送和接收数据,而并口则同时使用多条线进行数据传输。 其次,软件接口通常指操作系统、库或...

    六合一综合平台,外挂系统接口使用手册.rar

    接口定义了数据传输的格式、协议以及调用方法,确保不同系统之间能够正确地交换信息。在使用手册中,通常会详细解释以下几个方面的内容: 1. 接口规范:包括接口的URL、请求方法(GET、POST等)、参数定义及数据...

    视频会议接口及说明

    API接口通常使用HTTP/HTTPS协议,遵循RESTful设计原则,使得开发者可以通过发送JSON格式的数据来执行操作。 2. **SDK**:软件开发工具包提供了更深入的集成支持,包括库文件、示例代码、文档和工具,帮助开发者更...

    应用插件-API接口-v6.0_api接口应用插件_

    10. **安全性**:API接口的安全性至关重要,包括防止SQL注入、XSS攻击等,同时也要考虑数据加密传输以保护用户隐私。 通过以上介绍,我们可以了解到这个API接口应用插件涉及的技术面广泛,不仅涵盖了API设计的基本...

    百度原生信息流广告转化数据api对接文档-正式版1

    2. 广告服务器通过HTTP协议向百度原生广告服务器发送转化数据请求。 3. 请求中包含必要的参数,如广告ID、用户设备信息(IMEI、OAID、MAC地址等)、转化类型等。 4. 百度原生广告服务器接收并验证数据,然后存储和...

Global site tag (gtag.js) - Google Analytics