atitit.http get post的原理以及框架实现java php 1. 相关的设置 2. get比较简单只是文字串 3. post 字节流(基础) 4. post文字(with编码) 5. 发送http请求的框架 6. 参考

atitit.http get post的原理以及框架实现java php

1. 相关的设置 1

1.1. urlencode 1

1.2. 输出流的编码 1

1.3. 图片,文件的post 1

2. get比较简单只是文字串 1

3. post 字节流(基础) 1

4. post文字(with编码) 2

5. 发送http请求的框架 2

5.1. jdk URLConnection 2

5.2. jdk   HttpURLConnection 2

5.3. apache httpclient 2

5.4. http browser 3

6. 参考 3

1.1. urlencode

1.2. 输出流的编码

1.3. 图片,文件的post

2. get比较简单只是文字串

好像没有编码的问题

3. post 字节流(基础)

 public static String sendPost(String urlbyte[] bytes

 

作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://blog.csdn.net/attilax

 

4. post文字(with编码)

OutputStream outputStream=conn.getOutputStream();

        outputStream.write(param.getBytes("UTF-8"));

            // flush输出流的缓冲

        outputStream.flush();

 

 

5. 发送http请求的框架

5.1. jdk URLConnection

Java有原生的API可用于发送HTTP请求,即java.net.URL、java.net.URLConnection,这些API很好用、很常用,但不够简便

5.2. jdk   HttpURLConnection

java的标准类,HttpURLConnection继承自URLConnection,可用于向指定网站发送GET请求、POST请求。它在URLConnection的基础上提供了如下便捷的方法:

· int getResponseCode():获取服务器的响应代码。

· String getResponseMessage():获取服务器的响应消息。

· String getResponseMethod():获取发送请求的方法。

· void setRequestMethod(String method):设置发送请求的方法

5.3. apache httpclient

     在一般情况下,如果只是需要Web站点的某个简单页面提交请求并获取服务器响应,HttpURLConnection完全可以胜任。但在绝大部分情 况下,Web站点的网页可能没这么简单,这些页面并不是通过一个简单的URL就可访问的,可能需要用户登录而且具有相应的权限才可访问该页面。在这种情况 下,就需要涉及SessionCookie的处理了,如果打算使用HttpURLConnection来处理这些细节,当然也是可能实现的,只是处理起 来难度就大了。

       为了更好地处理向Web站点请求,包括处理SessionCookie等细节问题,Apache开源组织提供了一个HttpClient项目,看它的名称就知道,它是一个简单的HTTP客户端(并不是浏览器)可以用于发送HTTP请求,接收HTTP响应。但不会缓存服务器的响应,不能执行HTML页面中嵌入的Javascript代码;也不会对页面内容进行任何解析、处理

5.4. http browser

6. 参考

Java网络连接之HttpURLConnectionHttpClient 区别及联系 花开冬季 博客频道 - CSDN.NET.htm