后台发送http请求 类

原创 2016年06月01日 17:39:09
<span style="white-space:pre">		</span>public static String readPostContent(String httpUrl, String content, String charSetName) {
			StringBuilder sb = new StringBuilder();
			BufferedReader reader = null;
			try {
				URL resourceUrl = new URL(httpUrl);
				HttpURLConnection connection = (HttpURLConnection) resourceUrl.openConnection();
		
				// 设置是否向connection输出,因为这个是post请求,参数要放在http正文内,因此需要设为true
				connection.setDoOutput(true);
				// Read from the connection. Default is true.
				connection.setDoInput(true);
				// Set the post method. Default is GET
				connection.setRequestMethod("POST");
				// Post 请求不能使用缓存
				connection.setUseCaches(false);
				// URLConnection.setInstanceFollowRedirects是成员函数,仅作用于当前函数
				connection.setInstanceFollowRedirects(true);
				// 表明urlencoded编码过的form参数
				connection.setRequestProperty("Content-Type","application/x-www-form-urlencoded;charset="+charSetName);
				// 开始连接(连接前配置必须要完成,否则无效)
				connection.connect();
				PrintWriter out = new PrintWriter(new OutputStreamWriter(connection.getOutputStream(),charSetName));  
				out.println(content);
				out.flush();
				out.close(); // flush and close
//				reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
			    reader = new BufferedReader(new InputStreamReader(connection.getInputStream(), charSetName));

				String line;
				while ((line = reader.readLine()) != null) {
					sb.append(line);
				}
				connection.disconnect();
			} catch (MalformedURLException e) {
				System.out.println("http请求时,URL(" + httpUrl + ")格式错误: "+ e);
				e.printStackTrace();
			} catch (ProtocolException e) {
				System.out.println("http请求时,协议异常: "+ e);
				e.printStackTrace();
			} catch (IOException e) {
				System.out.println("http请求时,IO异常: "+ e);
				e.printStackTrace();
			} finally {
				if (null != reader)
					try {
						reader.close();
					} catch (IOException e) {
					}
			}
		
			return sb.toString();
		}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

[Android]通过JNI实现卸载自身App后台发送Http请求~

摘要: 使用JNI fork进程实现 监控自身App被卸载 首先这个功能仅供cankao 毕竟这个行为已经跟数字公司一样不人道了  可以使用linux exec命令跳转到浏览器的反馈页我使用的环...

C#后台发送Http请求

/// /// 发送请求 /// /// 请求地址 /// 参数格式 “name=王武&pass=123456” /...

java 后台发送http请求

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import jav...
  • Brady74
  • Brady74
  • 2017年08月09日 10:57
  • 109

java后台请求http

  • 2017年07月27日 10:49
  • 5KB
  • 下载

(安全跨域)java.net.url实现后台发出http请求并输出获取到的数据

前面提到过要实现java安全跨域请求并交换数据的问题,这一篇博客我们就一起学习一下如何跨域访问资源并返回数据的问题。 要实现跨域请求需要用到java的api,java.net.URL 和 java....

自己生成网络后台接口并利用charles模拟Http请求和响应

最新项目组服务端的童鞋们太不给力了,接口一直没有出来,为了方便开发。服务器的童鞋们定义好了http接口以及返回的json结构。然后客户端就可以利用json结构,模拟数据,然后顺利开发,最后等服务器接口...

http 500 Internal Server Error的错误 ajax请求SpringMVC后台中返回500 Internal Server Error

使用httprequester接口测试能返回数据,但是用ajax返回json格式的时候返回报500Internal Server Error。springMVC+ajax 400 bad reques...

c#后台直接发起http请求

c#后台直接发起http请求

简单的利用UrlConnection,后台模拟http请求

这两天在整理看httpclient,然后想自己用UrlConnection后台模拟实现Http请求,于是一个简单的小例子就新鲜出炉了(支持代理哦): public class SimpleHttpTe...

AngularJS $http 异步后台无法获取请求参数

对于AJAX应用(使用XMLHttpRequests)来说,向服务器发起请求的传统方式是:获取一个XMLHttpRequest对象的引用、发起请求、读取响应、检查状态码,最后处理服务端的响应。整个过程...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:后台发送http请求 类
举报原因:
原因补充:

(最多只允许输入30个字)