0
我想在我的Android應用程序中使用翻新2.3。如何使用兩個'?'來使用URL在改造
我有以下URL格式:
www.test.com/api?url=a?response=json。
這個URL如何被傳送到QueryParam?對於第一部分www.test.com/api將是我的基本URL,然後@Query("url")
價值,但如何處理後responsetype=json
秒'?'
我想在我的Android應用程序中使用翻新2.3。如何使用兩個'?'來使用URL在改造
我有以下URL格式:
www.test.com/api?url=a?response=json。
這個URL如何被傳送到QueryParam?對於第一部分www.test.com/api將是我的基本URL,然後@Query("url")
價值,但如何處理後responsetype=json
秒'?'
它應該有可能還添加爲查詢參數
如:
Call<TestSiteResult> getTestSiteInfo(@Query("url") String yourUrl, @Query("response") String responseType)
如果需要此響應參數,您總是可以考慮使用OkHttpClient作爲HTTP連接(您可以簡單地使用Retrofit.Builder的客戶端(OkHttpClient)方法添加它),它負責攔截URL並追加一個某些參數給你的網址(例如,我用過s截取api鍵)。
一個LoggingInterceptor看起來是這樣的:
public class TestLoggingInterceptor implements Interceptor {
@Override
public Response intercept(Chain chain) throws IOException {
Request original = chain.request();
HttpUrl originalHttpUrl = original.url();
HttpUrl url = originalHttpUrl.newBuilder()
.addQueryParameter("response", "json")
.build();
Request.Builder requestBuilder = original.newBuilder();
.url(url);
Request request = requestBuilder.build;
return chain.proceed(request);
}
}
我希望這可以幫助你。
我想格式是:www.test.com/api?url=a&response=json –
如果它不是像@NguyễnTrungHiếu說的那麼'a?response = json'是'url'的值,應該是urlEncoded?如果服務器端期望這個值,他們做了其他解析?!這是一個非常小的可能性,大部分就像NguyễnTrungHiếu所說的那樣。 – Yazan
www.test.com/api?url=a&response=json不是格式。網址有'?'代替 '&' –