android - 如何在改造中修复包含 $ 的查询参数
问题描述
我有一个查询参数,它需要一个 $,当我添加带有转义字符的 $ 时,它被转换为 %24
@GET("/ghi/abc/def(FieldId={FieldId},ContentId={ContentId})")
fun getUserGroup(
@Header("authorization") token: String
,@Path("FieldId") fieldId: Long,
@Path("ContentId") contentId: Long
, @Query("\$filter") filter: String
, @Query("\$skip") skip: String
, @Query("\$top") top: String
, @Query("\$count") count: Boolean
/ghi/abc/def(FieldId=22206,ContentId=346488)?%24filter=contains(tolower(Value),tolower('qwerty'))&%24skip=0&$top=2&%24count=true
解决方案
这并没有错。
%24 是 $ 的 Url 编码字符。
一些特殊字符被替换为一些其他字符,称为 HTTP URL 编码。
服务器知道它并解码它将正确处理请求。
推荐阅读
- html - 通过将鼠标悬停在 div 上开始视频
- javascript - 避免简单输出的分页限制 - Shopify / Liquid
- python - 如何在熊猫中格式化不同的值?
- sql - 我们可以在两个不同的查询中应用案例吗?
- typescript - TypeScript union type allowing values outside of type
- android - Android Studio 中的 Firebase 手机身份验证错误
- jdbc - 使用 neo4j jdbc 驱动程序和 neo4j 4 准备好的语句中的密码查询中的参数语法是什么?
- angular - 如何将输入和结果数据显示中的数据发布到 Angular 中的组件?
- angular - 如何获取订阅之外的价值?
- java - 大型对象描述符是否有多个“特殊值”