From 016c0b7e2f78ba49ddaad7c3d03071bf5a19b9f9 Mon Sep 17 00:00:00 2001 From: Timi Date: Mon, 13 Oct 2025 10:52:48 +0800 Subject: [PATCH] rename FormMap to ArgMap then support url arg --- .../network/{FormMap.java => ArgMap.java} | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) rename src/main/java/com/imyeyu/network/{FormMap.java => ArgMap.java} (50%) diff --git a/src/main/java/com/imyeyu/network/FormMap.java b/src/main/java/com/imyeyu/network/ArgMap.java similarity index 50% rename from src/main/java/com/imyeyu/network/FormMap.java rename to src/main/java/com/imyeyu/network/ArgMap.java index 6a45e9e..455c4a4 100644 --- a/src/main/java/com/imyeyu/network/FormMap.java +++ b/src/main/java/com/imyeyu/network/ArgMap.java @@ -1,5 +1,6 @@ package com.imyeyu.network; +import com.imyeyu.utils.Encoder; import org.apache.hc.client5.http.fluent.Form; import org.apache.hc.core5.http.NameValuePair; @@ -13,13 +14,27 @@ import java.util.Map; * @author 夜雨 * @since 2025-06-26 15:41 */ -public class FormMap extends HashMap { +public class ArgMap extends HashMap { - public List build() { + public List toNameValuePair() { Form form = Form.form(); for (Map.Entry item : entrySet()) { form.add(item.getKey().toString(), item.getValue().toString()); } return form.build(); } + + public String toURL() { + StringBuilder sb = new StringBuilder(); + for (Map.Entry item : entrySet()) { + sb.append(item.getKey().toString()).append('=').append(Encoder.urlArg(item.getValue().toString())); + sb.append('&'); + } + sb.deleteCharAt(sb.length() - 1); + return sb.toString(); + } + + public String toURL(String url) { + return url + "?" + toURL(); + } }