zoukankan      html  css  js  c++  java
  • django-rest-framework

    django-rest-framework

    You can't use 'macro parameter character #' in math mode

    postman的使用

    postman是目前最好用的 模拟发送http请求的工具

    DAY80-4 自动化接口测试

    还可以把测试的文件 导出json格式文件 并导入该文件 测试

    Restful规范

    定义了WEB API 接口的设计风格 尤其适用于前后端分离 我们任何一个框架都可以实现restful规范的api接口 10条规范

    # 抓包工具:
    fiddler,charles  可以抓浏览器的包和手机发过去的包

    # 1 安全数据保障 :建议使用https进行传输 不要使用http协议

    # 2 接口的特征表现 建议带api.xxxxxxx或xxxxx/api 让别人一看 就是一个api接口

    # 3 多版本共存 不能修改之前的接口版本 如果有接口更新的话 需要从新在写接口 v1,更新v2,在更新v3

    # 4 数据既是资源 都用名词表示   把数据 当成全部真实的物品,品类,东西,人等等   *************
    多本书用复数 也就是单词+s   books
    一本书      单词          book
    # 5 根据请求方式 操作不同 决定增删改查   ***********
    get
       post
       put 修改
       patch 修改  有点不一样
       delete

    # 6 过滤,通过url上传的形式传递搜索条件
    ?limit=10  指定返回记录的数量
       ?offset=10  指定返回记录的开始位置
       ?page=4     指定返回的页面
       
    # 7 响应状态码
    正常响应
    200 成功
           201 创建成功
       重定向响应
      301 永久重定向
           302 暂时重定向
       客户端异常
      403 请求无权限  foobbden
           404 请求路径不存在
           405 请求方法不存在
       服务器端异常
      500 服务器异常

    # 8 错误处理 应返回错误信息 error当做key
    {“error”:“无权限操作”}
       可以有也可以没有  这些知识规范
     
    # 9 返回结果,应该符合以下规范
    get请求  返回列表(数组)
      返回单个就直接返回一个字典就行了
           
       post    创建后,需要把新生成的数据在返回给前端
      前端拿着新生成的数据 验证并直接挑战页面就可以了
       put,patch   修改后数据,也需要返回给前端
       
       delete  返回一个空文档
       
    # 10 响应的json格式数据可以带地址
    {
           “name”:"肯德基"
           "img":"https//api.xx/img"
      }

    最好以{’‘ key“:“ value”,”key ’‘:“ value” , “ key”: [{“key”:“value”},{“key”:“value”},{“key”:“value”}]}

    如果直接data 应该['' '':{“key”:“value”}," ":{“key”:“value”}]

    这样写的原因是 直接可以 a[i] 拿数据 也可以for循环数据 字典的话会需要.title 或 .value 想比较麻烦一些,这样数据结构是方便简洁的

    drf安装

    pip install djangorestframework
    pip3 install djangorestframework -i https://pypi.tuna.tsinghua.edu.cn/simple
       
    #使用
    1 在setting里app 注册
      'rest_framework'
       2 在moudels 里建立数据库模型
       3 新建一个序列化类  
      1 添加一个.py文件 名字自己起  
           2 添加类
       4 在视图函数中写视图类
      全部都写CBV 功能
       5 写路由关系
           
  • 相关阅读:
    Hz赫兹的定义
    NetCore 迅速接入微信支付+支付宝支付 payLink C# 交差并集
    C# 生产随机数 --几乎可以做到不重复
    Spark MLib完整基础入门教程
    (转)Scrapy 教程
    (转)python自顶向下设计步骤_python实现自顶向下,自底向上
    (转)scrapy架构图与执行流程
    (转)Python:字典(zip, dict)
    (转)APUE第13章 守护进程Deameon
    (转)Python开发指南
  • 原文地址:https://www.cnblogs.com/xuexihainan/p/14342030.html
Copyright © 2011-2022 走看看