Java后端请求

#代码
@RequestMapping("/bilibili")
public Object getBilibili(){
String url = “https://www.wenjuan.com/open/devdocument_v3_4_1”;
String result = “”;
BufferedReader in = null;
try {
URL reurl = new URL(url);
//创建连接
URLConnection urlConnection = reurl.openConnection();
// 设置通用的请求属性
/*
* Accept,浏览器端能够处理的内容类型。
* 例如: Accept: text/html 代表浏览器可以接受服务器回发的类型为 text/html
* 也就是我们常说的html文档。如果服务器无法返回text/html类型的数据,
* 服务器应该返回一个406错误(non acceptable)。
* 通配符 * 代表任意类型,例如 Accept: / 代表浏览器可以处理所有类型,
* (一般浏览器发给服务器都是发这个)。
* /
urlConnection.setRequestProperty(“Accept”,"
/*");

        /*
         * Connection:浏览器与服务器的连接类型
         * 例如:Connection: keep-alive 当一个网页打开完成后,
         * 客户端和服务器之间用于传输HTTP数据的TCP连接不会关闭,
         * 如果客户端再次访问这个服务器上的网页,会继续使用这一条已经建立的连接。
         * 例如: Connection: close 代表一个Request完成后,
         * 客户端和服务器之间用于传输HTTP数据的TCP连接会关闭。
         * 当客户端再次发送Request,需要重新建立TCP连接。
         * */
        urlConnection.setRequestProperty("connection","keep-alive");

        /*
        * User-Agent,浏览器的用户代理字符串。告诉HTTP服务器,
        * 客户端使用的操作系统和浏览器的名称和版本。我们上网登陆论坛的时候,
        * 往往会看到一些欢迎信息,其中列出了你的操作系统的名称和版本,你所使用的浏览器的名称和版本,
        * 这往往让很多人感到很神奇,实际上,
        * 服务器应用程序就是从User-Agent这个请求报头域中获取到这些信息User-Agent请求报头域允许客户
        * 端将它的操作系统、浏览器和其它属性告诉服务器。
        * 例如: User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; CIBA;
        * .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C; InfoPath.2; .NET4.0E)
        * */
        urlConnection.setRequestProperty("user-agent",
                "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
        //建立实际连接
        urlConnection.connect();

        //获得响应头文档
        Map<String,List<String>> stringListMap = urlConnection.getHeaderFields();

        // 定义 BufferedReader输入流来读取URL的响应
        in = new BufferedReader(new InputStreamReader(urlConnection.getInputStream()));

        String line;
        while ((line = in.readLine())!=null){
            result += line;
            System.out.println("【日志================================】"+line);
        }
    } catch (MalformedURLException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }finally {
        try{
            if (in != null){
                in.close();
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    return result;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值