HTTP GET 请求

来源:互联网 发布:王家卫表白方式 知乎 编辑:程序博客网 时间:2024/06/18 11:17

HTTP GET 请求

HTTP 请求方法:    1、OPTIONS - 返回服务器针对特定资源所支持的HTTP请求方法。    2、HEAD - 请求页面的首部。     3、GET - 从指定的资源请求数据。    4、POST - 向指定的资源提交要被处理的数据    5、PUT - 从客户端向服务器传送的数据取代指定的文档的内容。    6、DELETE - 请求服务器删除指定的页面。     8、CONNECT - HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。    8、TRACE - 请求服务器在响应中的实体主体部分返回所得到的内容。 在客户机和服务器之间进行请求 响应时,两种最常被用到的方法是:GET 和 POST。
public class HttpGetRequest {    /**     * 向指定 URL 发送 GET 方法的请求     *      * @return URL 所代表远程资源的响应结果     */    public static String sendGet(String url) {        String result = "";        BufferedReader bufferedReader = null;        try {            String urlNameString = url + "?";            // 创建一个url            URL realUrl = new URL(urlNameString);            // 打开和URL之间的连接            URLConnection connection = realUrl.openConnection();            // 设置请求属性            connection.setRequestProperty("accept", "*/*");            connection.setRequestProperty("connection", "Keep-Alive");            connection.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");            // 建立连接            connection.connect();            // 获取所有响应头字段            Map<String, List<String>> map = connection.getHeaderFields();            // 遍历所有的响应头字段( key 对应 map 里的键)            for (String key : map.keySet()) {                // 获取每个 key 的值                System.out.println(key + "-------" + map.get(key));            }            // 定义 BufferedReader 输入流读取URL的响应            bufferedReader = new BufferedReader(new InputStreamReader(connection.getInputStream()));            String line;            // 循环读取,每次读取一行,            while ((line = bufferedReader.readLine()) != null) {                // 把读取的数据 赋值给 result,                result += line;            }        } catch (Exception e) {            System.out.println("******GET请求出现异常******" + e);            e.printStackTrace();        }        // 关闭输入流        finally {            try {                if (bufferedReader != null) {                    bufferedReader.close();                }            } catch (Exception e2) {                e2.printStackTrace();            }        }        return result;    }    public static void main(String[] args) {        String getRequset = HttpGetRequest.sendGet("https://github.com/");        System.out.println(getRequset);    }}
常见的 HTTP 状态码:    200 - 请求成功    301 - 资源(网页等)被永久转移到其它 URL    404 - 请求的资源(网页等)不存在    500 - 内部服务器错误
0 0