Java模拟HTTP请求2

之前转过一篇基于HttpClient的Java模拟HTTP请求,使用的第三方jar文件,这次升级JDK11之后模拟HTTP请求不需要再导入第三方jar文件了,官方扩展了java.net包,所有的HTTP请求相关类均位于java.net.http包内,示例代码如下:

package xyz.lsm1998.test;

import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;

/**
 * 作者:刘时明
 * 日期:2018/10/30
 * 时间:15:36
 * 说明:
 */
public class HttpTest
{
    public static void main(String[] args) throws Exception
    {
        // 建立一个请求对象,指定uri和请求类型(默认为GET)
        var request = HttpRequest.newBuilder()
                .uri(URI.create("http://www.lsm1998.xyz"))
                .GET()
                .build();
        // 建立HttpClient对象
        var client = HttpClient.newHttpClient();

        // 模拟一次同步请求
        HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
        System.out.println(response.body());

        // 模拟一次异步请求
        HttpResponse<String> response2=client.sendAsync(request,HttpResponse.BodyHandlers.ofString()).get();
        System.out.println(response2.body());
    }
}

ps:注意环境为JDK11

猜你喜欢

转载自blog.csdn.net/qq_38258310/article/details/83549542
今日推荐