我有一台我需要的GPS设备:
- 最后的位置
- 地点历史
关于最后一个位置,我在/ devices / id_of_my_gps上发出一个GET,它返回json中的数据{“latitude”:2.3,“经度”:4.5,“timestamp”:“2012-04-12T12:32: 45Z“}
关于位置的历史,我不确定最好的方法 我正在考虑在/ devices / id_of_my_gps / history上发布GET,并在查询字符串中提供“from”和“to”时间戳(需要检索历史记录的日期)作为参数。这是打破REST方法吗?
更新
在json中将from / to参数作为数据发送会更好:{“from”:“2012-04-12T12:32:45Z”,“to”:“2012-04-15T12:32:45Z “}?
答案 0 :(得分:3)
我正在考虑在/ devices / id_of_my_gps / history上发布GET 提供“从”和“到”时间标记(日期之间) 需要检索历史记录)作为查询字符串中的参数。是 打破REST方法?
没有。 REST不限制查询参数的使用,因此您的方法没有任何问题。
在json中将from / to参数作为数据发送会更好吗? {“from”:“2012-04-12T12:32:45Z”,“to”:“2012-04-15T12:32:45Z”}?
使用早期方法。您建议不能发出GET并在正文中发送数据。 GET请求不允许使用实体主体,因此如果您需要在实体主体中发送数据(在您的情况下在语义上不正确),则必须使用其他HTTP方法(PUT或POST)。