首页
学习
活动
专区
圈层
工具
发布

Django Rest Framework-介绍

Django REST framework特性 直观的 API web 界面 多种身份认证和权限认证方式的支持 内置了 OAuth1 和 OAuth2 的支持 内置了限流系统 根据 Django ORM...:在服务器新建一个资源 PUT :在服务器更新资源(客户端提供改变后的完整资源) PATCH :在服务器更新资源(客户端提供改变的属性) DELETE :从服务器删除资源 过滤,通过在url上传参的形式传递搜索条件...410 Gone -[GET]:用户请求的资源被永久删除,且不会再得到的。 422 Unprocesable entity - [POST/PUT/PATCH] 当创建一个对象时,发生一个验证错误。.../resource:返回单个资源对象 POST /collection:返回新生成的资源对象 PUT /collection/resource:返回完整的资源对象 PATCH /collection/resource...:返回完整的资源对象 DELETE /collection/resource:返回一个空文档 Hypermedia API,RESTful API最好做到Hypermedia,即返回结果中提供链接,连向其他

2K40

SpringMVC+RestFul详细示例实战教程一(实现跨域访问+postman测试)

状态(State): REST 更关注资源的状态而不是对资源采取的行为。...但是 REST 和 RPC 几乎没有任何关系,RPC 是面向服务的,而 REST 是面向资源的,强调描述应用程序的事物和名词。...在4.0后的版本中,spring 支持一下方式创建 REST 资源: 控制器可以处理所有的 HTTP 方法,包含几个主要的 REST 方法:GET、POST、PUT、DELETE、PATCH; 借助 spring...方式请求 /api/user/ 通过user对象的JSON 参数创建新的user对象 PUT 方式请求 /api/user/3 更新id为3的发送json格式的用户对象 DELETE 方式请求/api...这是实现REST的普通实现方式。但是也没人阻止你为POST或者PUT方式响应体里发送内容。但是这还是REST 的API?值得怀疑。 不管怎样,我们试着创建同一个用户时,你将获得HTTP冲突的响应。

2.9K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【愚公系列】2022年04月 Python教学课程 65-DRF框架之请求和响应

    文章目录 一、请求和响应 1.请求对象 2.响应对象 3.状态码 4.视图中的使用 5.URL的可选格式 ---- 一、请求和响应 1.请求对象 REST框架引入了一个扩展常规的对象,并提供更灵活的请求解析...适用于"POST"、"PUT"和"PATCH"方法。 2.响应对象 REST 框架还引入了一个对象,该对象是一种获取未渲染内容并使用内容协商来确定要返回给客户端的正确内容类型。...REST 框架为每个状态代码(如模块中)提供了更明确的标识符。最好始终使用这些标识符,而不是使用数字标识符。...4.视图中的使用 from rest_framework import status from rest_framework.decorators import api_view from rest_framework.response...首先向这两个视图添加一个关键字参数,如下所示。

    77530

    SpringMVC 与 REST.

    一、REST 的基础知识     我敢打赌这并不是你第一次听到或读到REST这个词。...恰好相反,REST 和 RPC 几乎没有任何关系。RPC 是面向服务的,并关注于行为和动作;而REST 是面向资源的,强调描述应用程序的事物和名词。     ...的时候,我们更关注资源的状态而不是对资源采取的行为; 转移(Transfer):REST涉及到转移资源数据,它以某种表述性形式从一个应用转移到另一个应用。    ...至于RESTful URL的结构并没有严格的限制,但是URL应该能够识别资源,而不是简单的发一条命名到服务器上: Create:POST Read:GET Update:PUT或PATCH Delete...-- delete() :在特定的URL上对资源执行HTTP DELETE操作。 -- put() :PUT资源到特定的URL。

    1.4K40

    Python进阶39-drf框架(一)

    post 增加一个(多个) /books/(pk) delete 删除一个 /books/(pk) put 整体更新一个 /books...在服务器更新资源(客户端提供改变后的完整资源) PATCH :在服务器更新资源(客户端提供改变的属性) DELETE :从服务器删除资源 过滤,通过在url上传参的形式传递搜索条件 https://api.example.com...410 Gone -[GET]:用户请求的资源被永久删除,且不会再得到的。 422 Unprocesable entity - [POST/PUT/PATCH] 当创建一个对象时,发生一个验证错误。...POST /collection:返回新生成的资源对象 PUT /collection/resource:返回完整的资源对象 PATCH /collection/resource:返回完整的资源对象..._request就是原生request # 2) 原生request对象的属性和方法都可以被drf的request对象直接访问(兼容) # 3) drf请求的所有url拼接参数均被解析到query_params

    4.4K30

    SpringMVC+RestFul详细示例实战教程(实现跨域访问)

    **状态(State):** REST 更关注资源的状态而不是对资源采取的行为。...但是 REST 和 RPC 几乎没有任何关系,RPC 是面向服务的,而 REST 是面向资源的,强调描述应用程序的事物和名词。...在4.0后的版本中,spring 支持一下方式创建 REST 资源: 控制器可以处理所有的 HTTP 方法,包含几个主要的 REST 方法:GET、POST、PUT、DELETE、PATCH; 借助 spring...方式请求 /api/user/ 通过user对象的JSON 参数创建新的user对象 PUT 方式请求 /api/user/3 更新id为3的发送json格式的用户对象 DELETE 方式请求/api...但是也没人阻止你为POST或者PUT方式响应体里发送内容。但是这还是REST 的API?值得怀疑。 不管怎样,我们试着创建同一个用户时,你将获得HTTP冲突的响应。

    1.3K40

    通俗讲解 RESTful

    (2)云里雾里的描述 REST 指的是 一组架构约束条件和原则,如果一个架构符合 REST 的约束条件和原则,就称之为 RESTful 架构。 RESTful 是一种软件架构风格,而不是标准。...我们平时用的最多的就是 GET 和 POST(例如写爬虫的时候,基本都是这两种),常用的还有 PUT、PATCH、DELETE 。...另外,PUT 的时候,也不是每个 user 就要建一个接口的,这里需要用到的就是路由,一般是写成 PUT /api/users/{id},这样就具有一般性了。路由在这里就不展开讲了。...幂等性:PUT 是幂等的,而 POST 是非幂等的。关于幂等性,见下文。 2.4 PATCH 和 PUT 的区别 PATCH 是 2010 后成为的正式 http 方法,它是对 PUT 的补充。...在没有 PATCH 之前,都是用 PUT 进行更新操作,这时候我们的接口中通常会有一个逻辑规则,如:如果对象的一个属性值为null,那么就不更新该属性(字段)值,通过这种方式来避免全部覆盖的操作。

    86040

    Selenium WebDriver—如何测试REST API

    REST API测试:与Selenium WebDriver UI测试相比,REST API测试并不难,大多数api都是GET / POST / PUT / PATCH / DELETE请求之一: GET...用于从后端获取信息以显示在UI中; POST 用于在后端添加新信息; PUT用于更新/替换任何现有信息; PATCH 用于部分更新; DELETE 用于从后端删除信息。...如果你的目的是对REST api进行详尽的测试,我建议看看JMeter。你可以查看下面关于使用JMeter进行REST API测试的文章。...这就是我们使用JTwig模板引擎的地方。首先,我在模板下面创建。...假设页面最多只能显示50个联系人,你需要点击翻页按钮查看更多联系人,但是在本地/QA环境中,当你启动一个新的应用程序时,可能没有足够的联系人来测试该显示功能;如果页面对象公开了一个方法来添加联系人,则需要调用

    2.1K10

    Selenium结合Unirest和JTwig进行API测试

    REST API测试:与Selenium WebDriver UI测试相比,REST API测试并不难,大多数api都是GET / POST / PUT / PATCH / DELETE请求之一: GET...用于从后端获取信息以显示在UI中; POST 用于在后端添加新信息; PUT用于更新/替换任何现有信息; PATCH 用于部分更新; DELETE 用于从后端删除信息。...如果你的目的是对REST api进行详尽的测试,我建议看看JMeter。你可以查看下面关于使用JMeter进行REST API测试的文章。...这就是我们使用JTwig模板引擎的地方。首先,我在模板下面创建。...假设页面最多只能显示50个联系人,你需要点击翻页按钮查看更多联系人,但是在本地/QA环境中,当你启动一个新的应用程序时,可能没有足够的联系人来测试该显示功能;如果页面对象公开了一个方法来添加联系人,则需要调用

    1.7K20

    REST初体验

    最近开发学习中用到了REST API,处于懵懂,此REST,非彼rest,不是我们理解的含义,这是一种缩写,REpresentational State Transfer,再具体一些就是Resource...学习REST,必须动手实践,用起来才能慢慢体会,否则只能停留于理论,但是基础的理论学习,还是必须,我主要是参考了,阮一峰老师的《RESTful API 设计指南》,概括精辟,没有任何废话,总结引用于此,...PUT(UPDATE):在服务器更新资源(客户端提供改变后的完整资源)。 PATCH(UPDATE):在服务器更新资源(客户端提供改变的属性)。 DELETE(DELETE):从服务器删除资源。...GET /collection:返回资源对象的列表(数组) GET /collection/resource:返回单个资源对象 POST /collection:返回新生成的资源对象 PUT /collection.../resource:返回完整的资源对象 PATCH /collection/resource:返回完整的资源对象 DELETE /collection/resource:返回一个空文档 通过以上基础理论的了解

    92620

    Django Rest Framewor

    (客户端提供改变后的完整资源) PATCH  :在服务器更新资源(客户端提供改变的属性) DELETE :从服务器删除资源 过滤,通过在url上传参的形式传递搜索条件 https://api.example.com...400 INVALID REQUEST - [POST/PUT/PATCH]:用户发出的请求有错误,服务器没有进行新建或修改数据的操作,该操作是幂等的。...410 Gone -[GET]:用户请求的资源被永久删除,且不会再得到的。 422 Unprocesable entity - [POST/PUT/PATCH] 当创建一个对象时,发生一个验证错误。...GET /collection:返回资源对象的列表(数组) GET /collection/resource:返回单个资源对象 POST /collection:返回新生成的资源对象 PUT /collection.../resource:返回完整的资源对象 PATCH /collection/resource:返回完整的资源对象 DELETE /collection/resource:返回一个空文档 Hypermedia

    1.6K20

    Django实践-10RESTful架构和DRF入门

    SaaS主要是指一个软件企业向其它企业提供软件服务。而SOA一般是企业内部搭建系统的基础。SaaS注重的是提供服务的思维。而SOA注重的是实现服务的思维。...RESTful API 设计原则和规范 RESTful API 设计原则和规范 资源。资源就是网络上的一个实体,一段文本,一张图片或者一首歌曲。资源总是要通过一种载体来反应它的内容。...PUT /students/ID/ 更新指定ID的学生信息(提供该学生的全部信息) PATCH /students/ID/ 更新指定ID的学生信息(提供该学生的部分信息) DELETE /students...让我们创建一个名为polls2/serializer.py的新模块,用于数据表示。...前后端分离的开发需要后端为前端、移动端提供API数据接口,而API接口通常情况下都是返回JSON格式的数据,这就需要对模型对象进行序列化处理。

    63721

    Django Rest Framework

    initialize_request(self, request, *args, **kwargs): 确保请求对象传递给处理程序方法是request的一个实例,而不是django的HttpRequest...REST框架提供的通用视图允许快速构建API观点紧密地映射到数据库模型,如果通用视图不适合的需要API, 可以使用常规APIView类,或重用mixin和基类使用的通用视图来组成自己的组可重用通用视图。...注意,mixin类提供操作方法而不是定义处理程序方法,比如. get()和. post(),直接。这允许更灵活的组合的行为。 通过rest_framework.mixins引用。...,提供put和patch方法处理器, 继承于:GenericAPIView,UpdateModelMixin .ListCreateAPIView: 创建和展示一个模型实例集合,提供get和post...: 读、改和删一个模型实例,get, put, patch,delete处理器, 继承于:GenericAPIView,RetrieveModelMixin,UpdateModelMixin,DestroyModelMixi

    2.6K60

    REST API 最佳实践

    在这篇文章中,我将带你了解创建 REST API 时需要遵循的一些最佳实践。这将帮助你创建最好的 API,并使你的 API 用户使用起来更容易。 0.什么是 REST API?...这是因为 HTTP 方法,例如 GET、POST、PUT、PATCH 和 DELETE,已经以动词形式执行基本的 CRUD(创建、读取、更新、删除)操作。...GET 是幂等的。GET 具有只读的含义。因此,你可以完美的使用缓存。 创建:使用 POST 创建新的资源(非幂等)。 更新:使用 PUT 更新整个资源,PATCH 将部分修改应用于资源。...PUT /articles/{id}:修改文章 PATCH /articles/{id}:修改文章的部分信息 DELETE /articles/{id}:删除文章 将 id 放在 URL 中而不是 Query...注意,点赞文章我选择了 PUT 而不是 POST,因为我觉得点赞这种行为应该是幂等的,多次操作的结果应该相同。 4.FAQ 批量删除接口如何设计?

    2.3K20

    十个书写Node.js REST API的最佳实践(上)

    对于Node.js来说最流行的一个用例就是用其来书写RESTful API。尽管如此,当我们使用监控工具来帮助用户排查问题时,我们总是能感受到在REST API上开发者们有很多的问题。...我希望这些最佳实践能够对你有所帮助。 1. 使用HTTP方法和API路由 设想一下你正在构建Node.js RESTful API用以用来创建、更新、获取或者删除用户。...这些操作HTTP已经有可以胜任的工具集:POST,PUT, GET, PATCH 或 DELETE。 作为最佳实践,你的API路由应该一直使用名词作为资源id。...涉及到用的资源相关的,路由机制也可以这样: POST /user 或者 PUT /user:/id 来创建新用户 GET /user 来获取列表的用户 GET /user/:id 来获得某一个用户 PATCH...新API最好不要使用会和其他应用发生冲突的header名。

    2.5K00
    领券