gpt4 book ai didi

java - 将变量应用于 Retrofit HTTP 方法注释

转载 作者:太空狗 更新时间:2023-10-29 13:11:30 24 4
gpt4 key购买 nike

这是代码。我要输入参数 EMAIL!但是我得到的属性值必须是恒定的

public interface Api{
Context context=null;
SharedPreferences sharedPref = context.getSharedPreferences("login",Context.MODE_PRIVATE);
static String email = sharedPref.getString("email","");

@GET("Home.php?email="+email+"&")
Call<List<Variabili_Main>> getHome(@Query("page") int index);

}

帮帮我!

好的,我已经编辑了,但现在如何编辑呢?我在做什么?

private void load(int index){
Call<List<Variabili_Main>> call = api.getHome(index);
call.enqueue(new Callback<List<Variabili_Main>>() {
@Override
public void onResponse(Call<List<Variabili_Main>> call, Response<List<Variabili_Main>> response) {
if(response.isSuccessful()){
movies.addAll(response.body());
adapter.notifyDataChanged();
}else{
Log.e(TAG," Response Error "+String.valueOf(response.code()));
}
}

@Override
public void onFailure(Call<List<Variabili_Main>> call, Throwable t) {
Log.e(TAG," Response Error "+t.getMessage());
}
});
}

最佳答案

重新阅读问题后@cricket_007 是正确的,因为电子邮件将作为查询发送

我会更新它以供将来引用以得到两个答案

我认为这应该是我之前遇到过与 header 类似的问题

试试这个解决方案

这是如果电子邮件在路径本身而不是查询中

@GET("Home.php/{email}")
Call<List<Variabili_Main>> getHome(@Path("email") String email,@Query("page") int index);

这是将其作为查询发送

@GET("Home.php")
Call<List<Variabili_Main>> getHome(@Query("email") String email,@Query("page") int index);

要打电话,您需要在通话中添加电子邮件

 SharedPreferences sharedPref = context.getSharedPreferences("login",Context.MODE_PRIVATE);
static String email = sharedPref.getString("email","");
api.getHome(email,index)

查看更多详情 Dynamic Paths in Retrofithttps://square.github.io/retrofit/

关于java - 将变量应用于 Retrofit HTTP 方法注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40097005/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com