当前位置: 首页 > 知识库问答 >
问题:

改装2-URL查询参数

丁星火
2023-03-14

我正在使用一个查询参数来设置Google Maps API所需的值。

@GET("/maps/api/geocode/json?")
    Call<JsonObject> getLocationInfo(@Query("address") String zipCode,
                                             @Query("sensor") boolean sensor,
                                             @Query("client") String client,
                                             @Query("signature") String signature);

改装生成:

&address=90210&sensor=false&client=gme-client&signature=signkey

这会在需要时导致调用失败

address=90210&sensor=false&client=gme-client&signature=signkey

我怎么解决这个?

共有1个答案

禄和宜
2023-03-14

如果指定@get(“foobar?a=5”),则必须使用&追加任何@query(“b”),生成类似foobar?a=5&b=7的内容。

如果指定@get(“foobar”),则必须使用追加第一个@query,生成类似foobar?b=7的内容。

这就是改造的工作原理

当您指定@get(“foobar?”)时,reverfit认为您已经给出了一些查询参数,并使用&追加更多的查询参数。

删除,您将得到所需的结果。

 类似资料:
  • 问题内容: 我正在使用查询参数来设置Google Maps API所需的值。 问题是我不需要第一个查询参数的符号。 改造产生: 这会在我需要时导致呼叫失败 我该如何解决? 问题答案: 如果指定,则必须使用附加任何内容,产生类似的内容。 如果指定,则第一个必须使用附加,产生类似的内容。 这就是改造的工作方式。 当您指定时,Retrofit认为您已经提供了一些查询参数,并使用附加了 更多 查询参数。

  • 我正在尝试使用Revovit2调用一个遗留API,这是URL,这是接口方法 不管我遇到什么错误,

  • 问题内容: 我想知道是在URL中使用矩阵还是查询参数。我发现对该主题的较早讨论并不令人满意。 例子 带有查询参数的URL:http://some.where/thing?paramA = 1&paramB = 6542 带有矩阵参数的URL:http://some.where/thing; paramA = 1; paramB = 6542 乍看之下,矩阵参数似乎只有优点: 更具可读性 不需要对X

  • 问题内容: 如何在Java中将查询参数编码为URL?我知道,这似乎是一个显而易见且已经提出的问题。 我不确定有两个微妙之处: 网址上的空格应该编码为“ +”还是“%20”?在chrome中,如果我输入“ http://google.com/foo=?bar me”,则chrome会将其更改为使用%20进行编码 是否有必要/正确将冒号“:”编码为%3B?Chrome没有。 笔记: 似乎不起作用,似乎

  • 在vuejs回调URL中,我有一些参数值,需要读取此参数值。例如,返回url为: ,但我有空值。 有没有办法获取vuejs中的参数值?

  • 我有一个apikey“令牌”,它必须在每个请求中作为查询参数提供。我如何设置翻新,以便始终在请求中包含此查询参数? 我当前将内标识作为默认参数提供: 但是由于我知道每个请求都需要相同的令牌,所以在我创建的每个请求函数中必须提供它作为默认参数,这感觉是多余的。我如何设置reverfit来用默认的查询参数修饰每个传出的请求? 这是我如何构建reverfit2实例的: 我认为在调用.build()之前,