我是 java 新手,我正在尝试使用 GET 命令进行一些 URL 编码来检索 plex livetv 目录。我遇到的问题是冒号“:”,如果我使用冒号,我会收到此错误,但如果我使用 URL 编码“tv.plex.providers.epg.onconnect%3A23”,我会收到一个空白的 livetv 库。
为“:”字符串定义 URL 编码的正确方法是什么?
格式错误的网址。基础: http: //192.168.1.50 :32400/,相对:tv.plex.providers.epg.onconnect:23/sections
public interface PlexMediaContainerService {
@GET("/")
Call<MediaContainer> retrieveRoot();
@GET("tv.plex.providers.epg.onconnect%3A23")
Call<MediaContainer> retrieveLibrary();
@GET("tv.plex.providers.epg.onconnect%3A23/sections")
Call<MediaContainer> retrieveSections();
@GET("tv.plex.providers.epg.onconnect%3A23/sections/{key}")
Call<MediaContainer> retrieveSections(@Path("key") String key);
@GET("tv.plex.providers.epg.onconnect%3A23/sections/{key}/{category}")
Call<MediaContainer> retrieveSections(@Path("key") String key,
@Path(value = "category", encoded = true) String category);
@GET("tv.plex.providers.epg.onconnect%3A23/sections/{key}/{category}/{secondaryCategory}")
Call<MediaContainer> retrieveSections(@Path("key") String key,
@Path(value = "category", encoded = true) String category,
@Path(value = "secondaryCategory", encoded = true) String secondaryCategory);
@GET("{urlPath}")
Call<MediaContainer> retrieveItemByUrlPath(@Path(value = "urlPath", encoded = true) String key);
@GET("tv.plex.providers.epg.onconnect%3A23/sections/{key}/search?type=1")
Call<MediaContainer> movieSearch(@Path("key") String key,
@Query("query") String query);
@GET("tv.plex.providers.epg.onconnect%3A23/sections/{key}/search?type=2")
Call<MediaContainer> tvShowsSearch(@Path("key") String key,
@Query("query") String query);
@GET("tv.plex.providers.epg.onconnect%3A23/sections/{key}/search?type=4")
Call<MediaContainer> episodeSearch(@Path("key") String key,
@Query("query") String query);
}