java如何发送get请求获取数据(附代码)

 更新时间:2023年10月27日 08:26:35   作者:梦醒贰零壹柒  
这篇文章主要给大家介绍了关于java如何发送get请求获取数据的相关资料,Java中的GET请求方法是HTTP协议中的一种请求方式,用于向服务器请求获取资源,需要的朋友可以参考下

1、使用Java标准库中的HttpURLConnection:

代码示例:

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

public class GetRequestUsingHttpURLConnection {
    public static void main(String[] args) {
        String url = "https://api.example.com/data"; // 替换成实际的API地址

        try {
            URL apiUrl = new URL(url);
            HttpURLConnection connection = (HttpURLConnection) apiUrl.openConnection();
            connection.setRequestMethod("GET");

            int responseCode = connection.getResponseCode();
            if (responseCode == HttpURLConnection.HTTP_OK) {
                BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
                String inputLine;
                StringBuffer response = new StringBuffer();

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

                System.out.println(response.toString());
            } else {
                System.out.println("GET request failed. Response code: " + responseCode);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

2、使用OkHttp库:

安装依赖

<dependency>
    <groupId>com.squareup.okhttp3</groupId>
    <artifactId>okhttp</artifactId>
    <version>4.9.1</version>
</dependency>

代码示例

import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;

import java.io.IOException;

public class GetRequestUsingOkHttp {
    public static void main(String[] args) {
        String url = "https://api.example.com/data"; // 替换成实际的API地址

        OkHttpClient httpClient = new OkHttpClient();

        Request request = new Request.Builder()
                .url(url)
                .get()
                .build();

        try {
            Response response = httpClient.newCall(request).execute();
            if (response.isSuccessful()) {
                String responseData = response.body().string();
                System.out.println(responseData);
            } else {
                System.out.println("GET request failed. Response code: " + response.code());
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

附:java发送get请求传json数据

在Java中发送GET请求传递JSON数据,可以使用HttpClient库来实现。以下是一个示例代码:

import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGetWithEntity;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.HttpClientBuilder;
import org.apache.http.util.EntityUtils;

import java.io.IOException;

public class Main {
    public static void main(String\[\] args) {
        HttpClient httpClient = HttpClientBuilder.create().build();
        String url = "http://example.com/api";
        String json = "{\"key\":\"value\"}";

        try {
            HttpGetWithEntity httpGet = new HttpGetWithEntity(url);
            httpGet.setEntity(new StringEntity(json));

            HttpResponse response = httpClient.execute(httpGet);
            String responseBody = EntityUtils.toString(response.getEntity());

            System.out.println(responseBody);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

在这个示例中,我们使用HttpClient库创建了一个HttpClient对象,并指定了请求的URL和JSON数据。然后,我们创建了一个HttpGetWithEntity对象,并将JSON数据设置为请求的实体。最后,我们执行GET请求并获取响应的内容。

请注意,这只是一个示例代码,你需要根据你的实际情况进行适当的修改。

总结 

到此这篇关于java如何发送get请求获取数据的文章就介绍到这了,更多相关java发送get请求获取数据内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 浅谈Java并发编程基础知识

    浅谈Java并发编程基础知识

    这篇文章主要介绍了浅谈Java并发编程基础知识,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11
  • IDEA修改idea64.exe.vmoptions文件以及解决coding卡顿问题

    IDEA修改idea64.exe.vmoptions文件以及解决coding卡顿问题

    IDEA修改idea64.exe.vmoptions文件以及解决coding卡顿问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • Java 向上转型和向下转型的详解

    Java 向上转型和向下转型的详解

    这篇文章主要介绍了 Java 向上转型和向下转型的详解的相关资料,需要的朋友可以参考下
    2017-04-04
  • idea显示properties文件中文乱码的解决方法

    idea显示properties文件中文乱码的解决方法

    在项目中通常会遇到如下问题,突然properties文件中文乱码,本文主要介绍了idea显示properties文件中文乱码的解决方法,具有一定的参考价值,感兴趣的可以了解一下
    2023-09-09
  • Spring Boot集成Spring Cloud Security进行安全增强的方法

    Spring Boot集成Spring Cloud Security进行安全增强的方法

    Spring Cloud Security是Spring Security的扩展,它提供了对Spring Cloud体系中的服务认证和授权的支持,包括OAuth2、JWT等,这篇文章主要介绍了Spring Boot集成Spring Cloud Security进行安全增强,需要的朋友可以参考下
    2024-11-11
  • spring框架下websocket的搭建

    spring框架下websocket的搭建

    本篇文章主要介绍了spring框架下websocket的搭建,非常具有实用价值,需要的朋友可以参考下。
    2017-03-03
  • Spring条件注解用法案例分析

    Spring条件注解用法案例分析

    这篇文章主要介绍了Spring条件注解用法,结合具体实例形式分析了Spring条件注解相关原理、使用方法及操作注意事项,需要的朋友可以参考下
    2019-11-11
  • 带你轻松了解Modbus协议

    带你轻松了解Modbus协议

    这篇文章主要给大家介绍了关于Modbus协议的相关资料,此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的,需要的朋友可以参考下
    2021-11-11
  • springboot如何通过@PropertySource加载自定义yml文件

    springboot如何通过@PropertySource加载自定义yml文件

    这篇文章主要介绍了springboot如何通过@PropertySource加载自定义yml文件,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • 关于springBoot yml文件的list读取问题总结(亲测)

    关于springBoot yml文件的list读取问题总结(亲测)

    这篇文章主要介绍了关于springBoot yml文件的list读取问题总结,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12

最新评论