OkHttp ,使用 HttpUrl.Builder 来添加查询参数并添加到请求对象

在使用 OkHttp 中,你可以使用 HttpUrl.Builder 来添加查询参数并将其添加到请求对象中。下面是一个示例代码:

复制代码
import okhttp3.HttpUrl;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;

public class Main {
    public static void main(String[] args) throws Exception {
        OkHttpClient client = new OkHttpClient();

        // 创建一个 HttpUrl.Builder 对象,并指定基本的 URL
        HttpUrl.Builder urlBuilder = HttpUrl.parse("https://api.example.com/endpoint").newBuilder();

        // 添加查询参数
        urlBuilder.addQueryParameter("param1", "value1");
        urlBuilder.addQueryParameter("param2", "value2");

        // 构建最终的 URL
        String url = urlBuilder.build().toString();

        // 创建请求对象
        Request request = new Request.Builder()
                .url(url)
                .build();

        // 发送请求
        Response response = client.newCall(request).execute();
        System.out.println(response.body().string());
    }
}

在上述示例中,我们首先创建了一个 HttpUrl.Builder 对象,并使用 HttpUrl.parse() 方法指定了基本的 URL。然后,使用 addQueryParameter() 方法添加查询参数。最后,通过调用 build() 方法构建最终的 URL。

注意,HttpUrl.Builder 对象是不可变的,因此每次调用 addQueryParameter() 方法时都会返回一个新的 HttpUrl.Builder 对象。因此,你可以链式调用 addQueryParameter() 方法来添加多个查询参数。

最后,我们使用构建好的 URL 创建了一个 Request 对象,并使用 OkHttpClient 来发送请求并获取响应。

请根据你的实际需求修改示例代码中的 URL、查询参数和其他请求配置。

相关推荐
总要学点什么10 分钟前
第106篇:三维特效-流动线效果——让一颗光点沿整条线一路滚到头
开发语言·javascript·ecmascript·gis·webgl·材质·cesium
Flynn Liang23 分钟前
LLM 应用安全:Prompt 注入、越权与输入输出护栏
java·人工智能·大模型·langchain4j·llm 安全·prompt 注入·guardrail
特立独行的猫A6 小时前
用仓颉语言 cj-tauri 框架,五分钟给娃做了个鸿蒙形近字游戏
java·后端·python
大可不必了11 小时前
03 函数定义和调用
开发语言·python
I_belong_to_jesus11 小时前
C++关于分支预测的优化1
开发语言·c++·算法
承渊政道12 小时前
【Python编程—从入门到实践】(记分与闯关:用Python+Pygame,打造越战越精彩的太空大战!)
开发语言·python·pycharm·游戏程序·pygame
爱学习的程序媛12 小时前
Python常用框架梳理
开发语言·后端·python·ai·web·后端框架·python框架
budingxiaomoli13 小时前
Spring统一功能处理
java·后端·spring
eggwyw13 小时前
Anaconda安装卸载的详细流程指南
开发语言·python
Flynn Liang15 小时前
可观测性与成本治理:一次对话的 17 个观测点
java·langchain·可观测性·micrometer·langchain4j·token 成本·llm 监控