首页 > 编程语言 >JAVA Response 返回值再拿

JAVA Response 返回值再拿

时间:2024-09-25 16:51:53浏览次数:3  
标签:JAVA java URL import 返回值 net Response HttpURLConnection HttpClient

在Java中,处理HTTP响应的返回值通常涉及使用库如HttpURLConnection或更现代的库如HttpClient。以下是一个基本的示例,展示了如何发送请求并处理响应:

使用 HttpURLConnection

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

public class HttpExample {
    public static void main(String[] args) {
        String urlString = "https://api.example.com/data"; // 替换为你的URL
        try {
            URL url = new URL(urlString);
            HttpURLConnection conn = (HttpURLConnection) url.openConnection();
            conn.setRequestMethod("GET");

            int responseCode = conn.getResponseCode();
            System.out.println("Response Code: " + responseCode);

            if (responseCode == HttpURLConnection.HTTP_OK) { // 200
                BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
                String inputLine;
                StringBuilder response = new StringBuilder();

                while ((inputLine = in.readLine()) != null) {
                    response.append(inputLine);
                }
                in.close();

                // 打印响应内容
                System.out.println("Response: " + response.toString());
            } else {
                System.out.println("GET request not worked");
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

使用 HttpClient(Java 11及以上)

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

public class HttpClientExample {
    public static void main(String[] args) {
        HttpClient client = HttpClient.newHttpClient();
        HttpRequest request = HttpRequest.newBuilder()
                .uri(URI.create("https://api.example.com/data")) // 替换为你的URL
                .build();

        client.sendAsync(request, HttpResponse.BodyHandlers.ofString())
              .thenApply(HttpResponse::body)
              .thenAccept(System.out::println)
              .join();
    }
}

总结

  • 上述代码展示了如何发送HTTP GET请求并处理响应。
  • HttpURLConnection适用于较旧的Java版本,而HttpClient提供了更简洁和现代的API。
  • 根据需求选择合适的库和方法。

标签:JAVA,java,URL,import,返回值,net,Response,HttpURLConnection,HttpClient
From: https://blog.51cto.com/u_16745004/12110727

相关文章

  • java中abstract关键字的使用案例
    创建动物父类跟狗猫子类abstractclassAnimal1{//抽象类Stringname;intage;Stringvariety;publicAnimal1(){}publicAnimal1(Stringname,intage,Stringvariety){//有参构造this.age=age;this.name=name;......
  • Java day 05
    Javaday05面向对象1.面向对象与面向过程的区别面向过程的思想:代表语言c语言功能开发的每一步都是自己参与的面向对象的思想:代表语言Java语言指的是不断地创建对象,指挥对象事情过程举例现实生活的例子喝水:面向过程的思想:自己拿起水杯,自己走到饮水机前,自己接水面向......
  • Java的详细学习路线
    大家好!我是故里dd,今天给大家说说Java的学习路线!Java的详细学习路线可以分为多个阶段,每个阶段都涵盖了不同的核心知识点和技能。以下是一个较为全面的Java学习路线,供您参考:第一阶段:Java核心基础阶段1.Java基础语法:  -了解Java的基本语法,如数据类型、变量、运算符、控制......
  • java-重启异常断掉的线程和监控线程状态
    java-重启异常断掉的线程和监控线程状态背景主要代码打印结果总结背景有一个线程,可能会因为异常而终止掉。为了监控这个线程,我又启动一个线程去监控。主要代码代码主要是由两个线程和两个可以产生异常的方法,内容跟简单,如下importjava.time.LocalDateTime;impor......
  • Java面试-Redis篇(二)
    分布式锁抢劵场景分布式锁使用集群分布式锁使用代码展示setnx实现分布式锁Redis实现分布式锁主要利用Redis的setnx命令。setnx是SETifnotexists(如果不存在,则SET)的简写。redisson给锁续期代码实现publicvoidredisLock()throwsInterruptedException......
  • java+vue计算机毕设X钢材商贸公司网络购销管理系统【源码+程序+论文+开题】
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着信息技术的飞速发展和互联网经济的蓬勃兴起,传统钢材商贸行业正面临前所未有的变革与挑战。X钢材商贸公司作为业内的佼佼者,长期以来依赖传统的购销......
  • java+vue计算机毕设爱心宠物中心管理系统【源码+程序+论文+开题】
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着现代生活节奏的加快和城市化进程的推进,宠物已成为许多家庭不可或缺的重要成员,它们不仅为人们的生活带来了欢乐与陪伴,也促进了人与动物之间的情感......
  • java+vue计算机毕设IE绿色城市垃圾分类监管系统【源码+程序+论文+开题】
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着城市化进程的加速,城市生活垃圾产生量急剧增加,垃圾分类已成为缓解“垃圾围城”困境、促进资源循环利用、实现绿色可持续发展的重要举措。然而,传统......
  • java实现角色及菜单权限
    在Java中实现角色及菜单权限通常涉及几个关键组件:用户(User)、角色(Role)、权限(Permission)以及它们之间的关系。下面我将概述一个基本的实现方案,包括数据库设计和代码层面的处理。1.数据库设计表设计用户表(users)user_id(主键)usernamepassword...角色表(roles)role_id(主键)role_name.......
  • 基于java实验室仪器设备管理系统的计算机毕设源码+论文
    摘要实验室仪器设备管理系统是一个基于Internet,采用B/S(Browser/Server,浏览器/服务器模式)模式,并根据现有的实验室仪器设备管理系统的现状而设计开发的服务于实验室仪器设备管理行业网络管理平台。本文以JSP为开发技术,实现了一个实验室仪器设备管理系统。该信息管理系统分为管理员......