java restful开发规范_restful规范

RESTful规范是一种设计API的准则,强调资源导向和HTTP方法的使用。包括根据HTTP方法进行不同操作,如GET、POST、PUT、PATCH、DELETE等;URL以名词结尾表示资源;体现版本信息;使用HTTPS确保安全性;设置状态码反馈请求结果;通过条件筛选数据;返回结构化的数据和错误信息。遵循RESTful规范可以提高接口的易用性和可维护性,但实际应用中应根据需求灵活调整。
摘要由CSDN通过智能技术生成

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

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

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

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

interface IFoo:

def func(self): pass

class Foo(IFoo):

def func(self):

print(11111)

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

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

restful规范

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

60ea0965f2d2fa7dc952d5b3c175505c.png

2、面向资源编程

url结尾建议是名词。

b8c4e1afecdbd3c9a085c19b98c3e63e.png

3、体现版本

情况一:

6dd1a3a96812f06eedcdfbdee70e9704.png

情况二:

884a1a3e52f0c7deefbec360a57c4fce.png

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

4、体现是API

39ef7e50ca328aa14f6ff8b4e6816605.png

5. https

4d004e2b797dd6525b5349d13304b911.png

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

6. 响应式设置状态码

我们常用的状态码:

200

请求成功

300

301

永久重定向

302

临时重定向

400

403

权限问题

404

找不到页面

500

服务器问题

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

return HttpResponse('abcdefg',status=300)

7. 条件

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

8e91e6244a93431429f7058fa109788d.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

9ecf0f5f83ddc9c0b92f0e95719d8ed2.png

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

总结:

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

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值