You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何转换包含特殊编码字符的API查询参数以适配WordPress查询?

问题根因

URL 规范中%是保留字符,作为百分编码的起始标识。服务端接收到查询参数时会默认执行一次URL解码操作,直接传递包含%的原始字段值会被误解码,导致最终查询用的参数值和数据库存储的字段值不匹配,因此返回空结果。

解决方法

核心逻辑是:传递参数前,先对参数值做一次URL编码,把值内所有的%字符转义为%25即可,其他普通字符无需改动。

你的场景适配

你存储的目标字段值为 CG7drXn9fvA%253D,编码后的合法传参值为 CG7drXn9fvA%25253D,最终请求URL为:

https://www.MYPORTAL.it/wp-json/filter/notary-district?wpcf-idnotary-district=CG7drXn9fvA%25253D

不同调用场景的实现

  • Postman调用:直接把参数值中的%替换为%25,填写到Params面板的Value栏即可,无需额外处理。
  • Java程序调用:使用JDK自带的编码工具类自动处理,避免手动拼接出错:
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;

// 原始字段值
String originalDistrictId = "CG7drXn9fvA%253D";
// 编码后可直接作为参数值使用
String encodedDistrictId = URLEncoder.encode(originalDistrictId, StandardCharsets.UTF_8);

验证方案

可以临时在接口逻辑中打印接收到的wpcf-idnotary-district参数值,确认打印结果和数据库存储的字段值完全一致,即可验证编码逻辑正确。


内容的提问来源于stack exchange,提问作者AndreaNobili

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 05:15:02