java restful开发规范_restful规范(示例代码)

咱们先来谈谈什么是接口?

我们常说的一个接口其实就是一个URL。

在java和c#中,接口也是一种约束。

# 约束继承(实现)了他的类中必须含有IFoo中的方法

interface IFoo:

def func(self): pass

class Foo(IFoo):

def func(self):

print(11111)

在python中不会有这种情况,咱们只做简单的了解。

主要来看看restful规范有哪些?

restful规范

1、根据method不同,进行不同操作

04d762d27ebf5025b7707a71b55dcecc.png

2、面向资源编程

url结尾建议是名词。

ab99d9195b37299876a34ba4004a36d3.png

3、体现版本

情况一:

49c9296aed0b76d2bdfae898192ed8c0.png

情况二:

1dda7bfadfcdb6c101bd338e2f70f25b.png

为了防止出现跨域情况,建议用情况一。

4、体现是API

24b9375d9c37f5c258eac4740707862d.png

5. https

f4cf98f026f435305945a4664f87fd2a.png

为了安全,我们建议用https,但是要破费了。

6. 响应式设置状态码

我们常用的状态码:

200

请求成功

300

301

永久重定向

302

临时重定向

400

403

中间件问题

404

找不到页面

500

代码出错

这是浏览器为我们响应式提供的通用状态码,但并不是一成不变的。我们也可以自定义返回状态码。

return HttpResponse(‘abcdefg‘,status=300)

7. 条件

一般情况我们需要筛选才能得到我们想要的数据,那么就要在url中添加相应的条件。

b1f0e7359ccac0ed4838edbf3b22bf59.png

8. 返回值

https://www.luffycity.com/api/v2/salary

GET: 所有列表

{

code: 10000,

data: [

{‘id‘:1,‘title‘:‘高亮‘},

{‘id‘:1,‘title‘:‘龙泰‘},

{‘id‘:1,‘title‘:‘小东北‘},

]

}

POST: 返回新增的数据

{‘id‘:1,‘title‘:‘高亮‘}

https://www.luffycity.com/api/v2/salary/1/

GET: 获取单条数据

{‘id‘:1,‘title‘:‘高亮‘}

PUT:更新

{‘id‘:1,‘title‘:‘高亮‘}

PATCH: 局部更新

{‘id‘:1,‘title‘:‘高亮‘}

DELETE:删除

9. 返回错误信息

{

code: 100001,

error: ‘xxx错误‘

}

10、Hypermedia API

a40f533c198075ad7d07c6a924dd6eff.png

为了方便,我们会看情况在里面新添加一条url。

总结:

看完了restful规范,我们配置接口时,必须要按照规范来吗?也不一定,还是要看需求。这只是一种规范,只是建议大家按照规范来使用而已。

restful与Django无关,与rest-framework无关,它只是一种规范。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值