改造使用@Path和@Query参数创建端点

时间:2018-12-14 14:42:36

标签: android api retrofit

我不得不在此查询网址/api/AssignedStaffClassSection/?StaffId=3071上调用api端点,但尝试失败了。

使用@Query参数的选项1

 @GET(WebSchoolApi._SAPI + "/AssignedStaffClassSection/")
Call<StaffAssignedClassSectionModel> getAssignedClassSection(@Query("StaffId") String staffId);

使用@Path参数的选项2

 @GET(WebSchoolApi._SAPI + "/AssignedStaffClassSection/?StaffId={staffId}")
    Call<StaffAssignedClassSectionModel> getAssignedClassSection(@Path("staffId") String _staffid);

我犯了什么错误吗?

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

对于GET请求,您可以使用:

example.com/api/AssignedStaffClassSection/?StaffId=3071

正确:

@GET(WebSchoolApi._SAPI + "/AssignedStaffClassSection/")
Call<StaffAssignedClassSectionModel> getAssignedClassSection(@Query("StaffId") String staffId);

您应将@Path用于

example.com/api/AssignedStaffClassSection/3071/StaffId

它看起来像:

@GET(WebSchoolApi._SAPI + "/AssignedStaffClassSection/{staffId}/StaffId")
Call<StaffAssignedClassSectionModel> getAssignedClassSection(@Path("staffId") String _staffid);

如果使用错误的工具,可能会导致崩溃。