Interface 改装2查询(客户端id)和参数(歌曲标题)

Interface 改装2查询(客户端id)和参数(歌曲标题),interface,retrofit,soundcloud,Interface,Retrofit,Soundcloud,如何编写一个改型界面,该界面接受一个键(字符串),然后接受“&q=”和我的歌曲(字符串)?我就是这么做的: public interface API { @GET("/tracks") Call<List<Song>> getSongs(@Query("client_id") String id, @Path("query") String query); } 您发布的URL中的client_i

如何编写一个改型界面,该界面接受一个键(字符串),然后接受“&q=”和我的歌曲(字符串)?我就是这么做的:

public interface API {
    @GET("/tracks")
    Call<List<Song>> getSongs(@Query("client_id") String id,
                              @Path("query") String query);
}

您发布的URL中的
client_id
q
参数都是路径参数。因此,您的接口方法应该如下所示:

public interface API {
    @GET("tracks")
    Call<List<Song>> getSongs(@Path("client_id") String id,
                              @Path("q") String query);
}
公共接口API{
@获取(“轨迹”)
调用getSongs(@Path(“client_id”)字符串id,
@路径(“q”)字符串查询);
}
我还建议将“/tracks”上的前置正斜杠移到
常量.BASE\u URL
的末尾,这样您就不必将正斜杠添加到所有API方法中。

别忘了添加

<uses-permission android:name="android.permission.INTERNET"/>


进入清单文件。

嘿,谢谢你的回答!我得到:com.sun.jdi.internalExecption:意外的JDWP错误:103在这一行:Call Call=service.getSongs(Constants.CLIENT_ID,“nofx”);我以前从未见过这种错误。调试或运行应用程序(或两者)时是否显示此错误?您使用的IDE和版本是什么?
public interface API {
    @GET("tracks")
    Call<List<Song>> getSongs(@Path("client_id") String id,
                              @Path("q") String query);
}
<uses-permission android:name="android.permission.INTERNET"/>