美文网首页
1808B第二周周考

1808B第二周周考

作者: 爽爽ing | 来源:发表于2019-05-07 22:54 被阅读0次

    1808B 第二周笔试题

    1. 选择题(8题 1~7单选, 8~10多选)(40分)

    1. Django框架的设计模式是( B )

    A. MVC B. MVT

    C. MVVM D. MVP

    2.Django在项目中用来配置项目信息文件是( A )

    A. setting.py B. urls.py

    C. init.py D. wsgi.py

    3.选择id为myId的网页元素正确的是(C )

    A. (document.myId) B.('myId')

    C. ('#myId') D.('.myId')

    1. 下列关于json模块的方法,描述正确的是( A )

    A、json.dumps 是将python数据类型,转换为json字符串

    B、json.dumps 是将json字符串转换为Python数据类型

    C、json.load是直接将json字符串转换为Python数据类型

    D、json.loads是直接将python数据类型,转换为json字符串

    5.Django创建项目使用的命令是( C )

    A、python3 manage.py makemigrations

    B、python3 manage.py migrate

    C、django-admin startproject

    D、python3 manage.py startproject

    6.下列关于csrf说法不正确的是( C)

    A. csrf存在的目的是为了防止跨域攻击

    B. 在settings.py的MIDDLEWARE中激活 'django.middleware.csrf.CsrfViewMiddleware'中间件, 表示在全局使用csrf认证

    C. @csrf_protect 装饰器,表示取消csrf验证

    D. @csrf_exempt装饰器,表示取消csrf验证

    1. mysql中为表中的字段添加索引的目的是( A )

    A、提高查询的检索效率

    B、归类

    C、创建唯一索引

    D、创建主键

    8.Django rest framework 用户认证,说法正确的是( ABCD )(多选)

    A、Django rest framework 可以通过自定义认证类实现认证功能,并且需要设置authentication_classes

    B、无论是自定义的认证类还是 rest framework 自带的认证类都继承自BaseAuthentication实现

    C、BaseAuthentication 中有两个方法 authenticate 和authenticate_header, 其中 authenticate 方法必须实现

    D、如果用户需要自定义认证方法则继承 BaseAuthentication 重写 authenticate 方法实现认证逻辑即可

    9. 关于RESTful请求方式描述正确的是( ABCD )(多选)

    A、GET(SELECT):GET从服务器取出资源(一项或多项)

    B、POST(CREATE):POST在服务器新建一个资源

    C、PUT(UPDATE):PUT在服务器更新资源(客户端提供改变后的完整资源)

    D、DELETE(DELETE):DELETE从服务器删除资源

    10. 关于属于mysql的约束类型的是( ACD )(多选)

    A、PRIMARY B、TRUNCATE

    C、DEFAULT D、UNIQUE

    二、判断题 (10分)

    1. DRF实现接口的方式有CBV和FBV两种,其中FBV是基于反射实现的 ( × )

    2. HTTP/HTTPS属于应用层协议,HTTPS比HTTP多了SSL安全套接字层, HTTPS会对数据进行加密,保证数据传输的安全性 ( √)

    3. HTTP是一个无状态的请求 ( √ )

    4. Python中类不支持多继承。 (× )

    5. DRF中APIView类通过dispatch方法,将不同的请求映射到不同的方法中 (√ )

    三、简答题 (50分)

    1. 简述Http中的状态保持?

    http协议是无状态的:每次请求都是一次新的请求,不会记得之前通信的状态;客户端与服务器端的一次通信,就是一次会话;实现状态保持的方式:在客户端或服务器端存储与会话有关的数据;存储方式包括cookie、session,会话一般指session对象;使用cookie,所有数据存储在客户端,注意不要存储敏感信息;推荐使用sesison方式,所有数据存储在服务器端,在客户端cookie中存储session_id;状态保持的目的是在一段时间内跟踪请求者的状态,可以实现跨页面访问当前请求者的数据;注意:不同的请求者之间不会共享这个数据,与请求者一一对应

    2、请列举一些常见的请求状态码?

    余请求才能完成整个处理过程。

    • 200开头:表示服务器成功接收请求并已完成整个处理过程。

    • 200(OK 请求成功)。

    • 300开头:为完成请求,客户需进一步细化请求。例如:请求的资源已经移动一个新地址、 常用

    • 301: 永久重定向

    • 302: 临时重定向(所请求的页面已经临时转移至新的url)

    • 400开头:客户端的请求有错误.

    • 400:错误请求,服务器无法解析请求

    • 401:未授权,没有进行身份验证

    • 403:服务器拒绝访问

    • 404:服务器无法找到被请求的网页

    • 405:请求方式不被允许

    • 408:请求超时

    • 500开头:服务器端出现错误

    • 500:服务器内部错误

    • 501:服务器不具备完成请求的功能

    • 503:服务器不可用

    3. 列举django中间件的5个方法?

    1.process_request : 请求进来时,权限认证

    2.process_view : 路由匹配之后,能够得到视图函数

    3.process_exception : 异常时执行

    4.process_template_responseprocess : 模板渲染时执行

    5.process_response : 请求有响应时执行

    1. restful 常见的请求方式有哪些?分别在什么情况下使用?

    GET :从服务器取出资源(一项或多项)

    POST :在服务器新建一个资源

    PUT :在服务器更新资源(客户端提供改变后的完整资源)

    PATCH :在服务器更新资源(客户端提供改变的属性)

    DELETE :从服务器删除资源

    5、根据以下场景,使用合适的Vue指令?

    (1)遍历列表:v-for

    (2)input数据的双向绑定:v-model

    (3)通过控制 display 样式来控制显示/隐藏:v-show

    (4)绑定事件:v-bind

    (5)输出富文本:

    6、谈谈你对面向对象的理解?

    在我理解,面向对象是向现实世界模型的自然延伸,这是一种“万物皆对象”的编程思想。在现实生活中的任何物体都可以归为一类事物,而每一个个体都是一类事物的实例。面向对象的编程是以对象为中心,以消息为驱动,所以程序=对象+消息。

    面向对象有三大特性,封装、继承和多态。

    封装就是将一类事物的属性和行为抽象成一个类,使其属性私有化,行为公开化,提高了数据的隐秘性的同时,使代码模块化。这样做使得代码的复用性更高。

    继承则是进一步将一类事物共有的属性和行为抽象成一个父类,而每一个子类是一个特殊的父类--有父类的行为和属性,也有自己特有的行为和属性。这样做扩展了已存在的代码块,进一步提高了代码的复用性。

    如果说封装和继承是为了使代码重用,那么多态则是为了实现接口重用。多态的一大作用就是为了解耦--为了解除父子类继承的耦合度。如果说继承中父子类的关系式IS-A的关系,那么接口和实现类之之间的关系式HAS-A。简单来说,多态就是允许父类引用(或接口)指向子类(或实现类)对象。很多的设计模式都是基于面向对象的多态性设计的。

    相关文章

      网友评论

          本文标题:1808B第二周周考

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