当前位置:  开发笔记 > 运维 > 正文

在Retrofit中@Query和@path有什么区别?

如何解决《在Retrofit中@Query和@path有什么区别?》经验,为你挑选了1个好方法。

我想通过传递一些参数来使用改造库来解析和发布数据.但是在定义模型类时有时我们会在变量前面使用@Serialized,那个Serialized的用途是什么.@Get和@Query在将params传递给API时有什么区别.可以解释其中的差异.



1> Than..:

假设你有api方法,@GET("/api/item/{id}/subitem/")所以通过使用@Path("id")你可以在路径中指定项目的id.但是,您的api可能会在查询中使用其他参数,例如sort,lastupdatetime,limit等,因此您可以在url的末尾添加这些参数.@Query(value = "sort") String sortQuery

所以完整的方法看起来像:

@GET("/api/item/{id}/subitem")
SubItem getSubItem(@Path("id") int itemId, @Query("sort") String sortQuery, @Query("limit") int itemsLimit);

并且调用api.getSubItem(5, "name", 10)将产生url@GET("/api/item/5/subitem/?sort=name&limit=10")

并且@Get是HTTP方法

http://www.w3schools.com/tags/ref_httpmethods.asp说

客户端和服务器之间的请求 - 响应的两种常用方法是:GET和POST.

GET - 从指定资源请求数据POST - 将要处理的数据提交到指定资源

推荐阅读
ERIK又
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有