在正确的查询字符串中附加到 android 中的改装请求

In correct query string append to retrofit request in android

我正在尝试将“test+data”传递给 Retrofit api 调用,但在 api 请求过程中它被处理为“test%2Bdata”。因此,我的 API 请求失败了。

如何将准确的文本传递给改造调用?

我正在尝试使用以下代码。

build.gradle:

            buildConfigField("String", "api_type", "\"test+data\"")

存储库:

    apiService.getAllData(BuildConfig.api_type)).enqueue(object : Callback<User> {
    override fun onResponse(call: Call<User>, response: Response<User>) {
    }

    override fun onFailure(call: Call<User>, t: Throwable) {
       
    }
});

API服务:

@GET("/?format=json")
fun getAllData(@Query("q") q: String) : Call<User>

你需要在@Query注解中添加'encoded = true',像这样:

@Query("q" , encoded = true)