我是Android Retrofit的新手,我想知道如何在要获取场地详细信息(https://developer.foursquare.com/docs/api/venues/details)时提出适当的要求
我知道如何发出这样的请求:https://api.foursquare.com/v2/venues/search&v=20190211&near=Amsterdam
@GET("/v2/venues/search")
fun getVenueResults(
@Query("near") near: String,
@Query("limit") limit: Int,
@Query("v") version: Int = 20190211,
@Query("client_id") clientId: String = BuildConfig.FS_Client_ID,
@Query("client_secret") clientSecret: String = BuildConfig.FS_Client_Secret
): Call<FoursquareAPIResponse>
但要获取详细信息,您必须提出以下请求:
https://api.foursquare.com/v2/venues/VENUE_ID
其中VENUE_ID是场所的ID。如果我做这样的事情:
@GET("/v2/venues/")
fun getVenueDetails(
@Query("") id: String,
@Query("v") version: Int = 20190211,
@Query("client_id") clientId: String = BuildConfig.FS_Client_ID,
@Query("client_secret") clientSecret: String = BuildConfig.FS_Client_Secret
): Call<FoursquareAPIResponse>
它使用场所/?= VENUE_ID而不是场所/ VENUE_ID格式化获取请求
有人可以帮我找到在翻新中正确的方法,以将获取请求格式化为场地/ VENUE_ID吗?
答案 0 :(得分:1)
尝试一下
@GET("/v2/venues/{venueId}")
fun getVenueDetails(
@Query("v") version: Int = 20190211,
@Query("client_id") clientId: String = BuildConfig.FS_Client_ID,
@Query("client_secret") clientSecret: String = BuildConfig.FS_Client_Secret,
@Path("venueId") id: String,
): Call<FoursquareAPIResponse>
文档-https://square.github.io/retrofit/2.x/retrofit/index.html?retrofit2/http/Path.html