zoukankan      html  css  js  c++  java
  • Rest_Framework简介

    Web应用模式

    在开发Web应用中,有两种应用模式:前后端不分离和前后端分离

    前后端不分离

    前后端不分离通俗来讲就是不区分前端和后端,浏览器请求时服务器直接返回页面,其示意图如下


    ### 前后端分离 前后端分离是Web不断发展的结果,它将开发工作分为两块,前端和后端,前端负责静态页面的构建和数据展示,而数据则来自于后端,后端的工作在于对外提供统一的API接口,供前端调用获取数据,其示意图如下


    ## API接口 为了在团队内部形成共识,防止个人习惯差异引起的混乱,我们需要找到一种大家都觉得很好的接口实现规范,而且这种规范能够让后端写的接口,用途一目了然,减少双方之间的合作成本。

    目前市面上大部分公司开发人员使用的接口服务架构主要有两种:Restful和RPC

    RPC

    RPC(Remote Procedure Call)翻译成中文就是远程过程调用

    action=get_all_student&params=301&sex=1
    

    上面是一个典型的RPC调用,action指定要调用的函数名,&后面可以传入参数

    RPC的缺点是如果函数数量较多,前端在请求api接口时会比较难找,且容易出现重复的接口


    ### RESTful接口 REST全称是Representational State Transfer,中文名为表述性状态转移,简单来讲,就是把后端所有的数据/文件看成资源,接口请求数据,本质上就是对资源进行操作。Web项目中操作资源,无非就是增删改查,所以要求在地址栏中声明要操作的资源是什么,然后通过`http请求动词`来说明对资源进行哪一种操作

    以下是几个示例:
    GET http://www.douban.com/api/books/ 获取所有书籍
    POST http://www.douban.com/api/books/ 添加一本书
    DELETE http://www.douban.com/api/books/2/ 删除id=2的书
    PUT http://www.douban.com/api/books/2/ 更新id=2的书籍信息


    ## RESTful API规范 RESTful 理念认为后端开发任务就是提供数据的,对外提供的是数据资源的访问接口,所以在定义接口时,客户端访问的URL路径就表示这种要操作的数据资源。而对于数据资源分别使用POST、DELETE、GET、UPDATE等请求动作来表达对数据的增删查改。 详细的规范参考博客:[RESTful 规范](https://www.cnblogs.com/zzliu/p/10854097.html)
    ## 序列化 api接口开发,最核心最常见的一个过程就是序列化,所谓序列化就是把**数据转换格式**,序列化可以分两个阶段:

    序列化: 把我们识别的数据转换成指定的格式提供给别人。

    反序列化:把别人提供的数据转换/还原成我们需要的格式。

    例如:前端js提供过来的json数据,对于python而言就是字符串,我们需要进行反序列化换成模型类对象,这样我们才能把数据保存到数据库中。

  • 相关阅读:
    Vue 消息无缝滚动
    请求不携带cookie问题
    vue中添加favicon
    自定义表单-校验数据规则
    vue 刷新当前页面的方式
    读阮一峰《ECMAScript 6 入门》小结
    Java进阶知识点3:更优雅地关闭资源
    Java进阶知识点2:看不懂的代码
    用Java实现异构数据库的高效通用分页查询功能
    Java进阶知识点1:白捡的扩展性
  • 原文地址:https://www.cnblogs.com/zzliu/p/10853781.html
Copyright © 2011-2022 走看看