Django 计算器应用程序的Rest统一接口

Django 计算器应用程序的Rest统一接口,django,rest,api,django-rest-framework,Django,Rest,Api,Django Rest Framework,我正在为一个基本的计算器设计RESTAPI 我需要知道定义接口的最佳实践是什么 /calc-service/add /calc-service/sub /cal-service/mul 第二种方法 /calc-service/?params 我需要知道定义接口的最佳实践是什么 /calc-service/add /calc-service/sub /cal-service/mul REST不关心资源标识符的拼写 大多数计算查询都是只读的,也就是说“只读”,因此您通常会计划对请求使用语义,这

我正在为一个基本的计算器设计RESTAPI

我需要知道定义接口的最佳实践是什么

/calc-service/add
/calc-service/sub
/cal-service/mul
第二种方法

/calc-service/?params
我需要知道定义接口的最佳实践是什么

/calc-service/add
/calc-service/sub
/cal-service/mul
REST不关心资源标识符的拼写

大多数计算查询都是只读的,也就是说“只读”,因此您通常会计划对请求使用语义,这反过来意味着所有客户端提供的操作数都将出现在目标uri中

/calc-service/add/x=2/y=3
/calc-service/add?x=2&y=3
/calc-service?add&x=2&y=3
/calc-service/x=2/y=3/add
/calc-service/x=2/y=3?add
/calc-service?op=add&x=2&y=3
这些都很好

在查询字符串中使用
application/x-www-form-urlencoded
参数的优点是,HTML客户端已经遵循了表单处理标准,这些标准从表单中用户提供的数据生成具有该形状的URI

但是,对于具有适当级别的模板处理的客户机来说,任何易于表示为a的模式都是不错的

在某些情况下,使用粗粒度表示(think)是有意义的,URI标识特定的子元素

/calc-service/x=2/y=3#add
/calc-service/x=2/y=3#sub
/calc-service/x=2/y=3#mul