Foursquare API 通过 Retrofit for Android 获取场地详细信息
Foursquare API get venue details with Retrofit for Android
我是 Retrofit for Android 的新手,我想知道如何在我想获取场地详细信息时提出正确的请求 (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>
它将获取请求格式化为 venues/?=VENUE_ID 而不是 venues/VENUE_ID
有人可以帮助我在 Retrofit 中找到将获取请求格式化为 venue/VENUE_ID 的正确方法吗?
试试这个
@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
我是 Retrofit for Android 的新手,我想知道如何在我想获取场地详细信息时提出正确的请求 (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>
它将获取请求格式化为 venues/?=VENUE_ID 而不是 venues/VENUE_ID
有人可以帮助我在 Retrofit 中找到将获取请求格式化为 venue/VENUE_ID 的正确方法吗?
试试这个
@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