Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/199.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 改造中@Query和@path的区别是什么?_Android_Retrofit - Fatal编程技术网

Android 改造中@Query和@path的区别是什么?

Android 改造中@Query和@path的区别是什么?,android,retrofit,Android,Retrofit,我想通过传递一些参数来使用翻新库解析和发布数据。但是,有时在定义模型类时,我们会在变量前面使用@Serialized,这个序列化的用法是什么。在将参数传递给API时@Get和@Query之间有什么区别。有人能解释这个区别吗。假设您有API方法@Get(/API/item/{id}/subitem/”那么使用@Path(“id”)您可以为路径中的项目指定id。但是,您的api可能会在查询中使用其他参数,如sort、lastupdatetime、limit等,所以您可以通过@query(value=

我想通过传递一些参数来使用翻新库解析和发布数据。但是,有时在定义模型类时,我们会在变量前面使用@Serialized,这个序列化的用法是什么。在将参数传递给API时@Get和@Query之间有什么区别。有人能解释这个区别吗。

假设您有API方法
@Get(/API/item/{id}/subitem/”
那么使用
@Path(“id”)
您可以为路径中的项目指定id。但是,您的api可能会在查询中使用其他参数,如sort、lastupdatetime、limit等,所以您可以通过
@query(value=“sort”)字符串sortQuery将这些参数添加到url的末尾

因此,完整方法将如下所示:

@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方法

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

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


@GET
是请求方法。你用它来标记方法

@Query
是查询参数(即URL中的参数)。用它标记方法参数

@Serialized
可能不属于改型,看看它的包名(将光标移到那里,然后在Android studio中按'Ctrl+Q)

没有更好的解释了