在 Java 中,可以使用 java.net.URL 类来解析 URL 并获取其参数。以下是一个示例代码,展示如何截取 GET 请求 URL 后面的键值对:

import java.net.URL;
import java.util.HashMap;
import java.util.Map;

public class Main {
    public static void main(String[] args) {
        String url = "http://example.com/api?param1=value1&param2=value2&param3=value3";

        Map<String, String> params = getParamsFromUrl(url);

        for (Map.Entry<String, String> entry : params.entrySet()) {
            System.out.println(entry.getKey() + " = " + entry.getValue());
        }
    }

    public static Map<String, String> getParamsFromUrl(String url) {
        Map<String, String> params = new HashMap<>();

        try {
            URL parsedUrl = new URL(url);
            String query = parsedUrl.getQuery();

            if (query != null) {
                String[] queryParams = query.split("&");

                for (String param : queryParams) {
                    String[] keyValue = param.split("=");
                    String key = keyValue[0];
                    String value = keyValue[1];

                    params.put(key, value);
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }

        return params;
    }
}

在上面的示例中,getParamsFromUrl() 方法接收一个 URL 字符串作为输入,并返回一个 Map 对象,其中包含 URL 中的参数和对应的值。打印结果如下:

param1 = value1
param2 = value2
param3 = value3

请注意,上述代码只适用于 GET 请求中的 URL 参数。如果 URL 中还包含其他部分(如锚点),则需要根据具体情况进行适当的修改。

Java 获取 GET 请求 URL 参数的键值对

原文地址: https://www.cveoy.top/t/topic/pJmT 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录