补充

作者: Zzmi | 来源:发表于2019-04-23 12:33 被阅读0次

    面向对象

    — 封装
    —— 对同一类方法封装到类中
    —— 将数据封装到对象中
    调用类的实例方法不需要加self
    eg:action_func = getattr(self, action)
    ret = action_func(request, queryset)

    跨域,原生Ajax(XMLHttpRequest)(浏览器同源策略限制Ajax请求,不阻止具有src属性值的标签)

    —— JSONP:原理是动态创建script一个标签。先定义一个函数(函数名(数据)),然后接收服务端返回数据,直接触发函数
    —— CORS:原理是设置响应头(浏览器同源策略)。有简单请求和复杂请求

    浏览器 -----------------------------------------------------------》server
    “ 请求首行\r\ncontent-type: text/html; charset=utf-8\r\n\r\na=1&b=2 ”
    “ 请求首行\r\ncontent-type: applcation/json\r\n\r\n'{"a":1,"b":2}' ”

    在django的wsgi的request中:

    request.body:元数据'{"a":1,"b":2}'
    if 请求头中的content-type: text/html; charset=utf-8:
    request.POST = 解码decode(a=1&b=2)

    django的request.POST和request.body:

    1、请求头要求:
    --Content-Type: application/x-www-form-urlencoded
    --PS: 如果请求头中的Content-Type: application/x-www-form-urlencoded,request.POST中才有值(去request.body中解析数据)
    2、数据格式要求:
    --name=aa&age=12&gender=男

    一 函数定义
    二 函数对象、函数嵌套
    三 名称空间与作用域
    四 闭包函数、装饰器
    五 迭代器、生成器
    六 三元表达式、列表推导式、生成器表达式
    七 递归、匿名函数、内置函数

    相关文章

      网友评论

          本文标题:补充

          本文链接:https://www.haomeiwen.com/subject/fttfyqtx.html