面试题

1 django的请求周期?

浏览器请求wsgi(浏览器服务网关接口),请求进来到wsgi,wsgi把请求交给中间件,中间件过来然后经过路由系统,路由系统后经过视图,视图函数通过orm去数据库请求数据,拿去模板,用数据渲染模板,把渲染后的字符串返回给中间件,中间件返回给wsgi,wsgi返回给浏览器

 

wsgi协议的模块  wsgiref  同时只能处理一个请求,uwsgi 请求效率更高

wsgi是web服务器网关接口,是一套web协议, uwsgi,wsgiref,werkzreg,wsgiref是实现wsgi标准的模块,本质是socket写的服务端。

django 请求流程示意图

 

2 django里面有socket吗?

没有,django依赖的wsgi的socket.

3 你们公司如果遇到需要紧急修复的bug,怎么解决?

在master分支创建一个debug分支,在debug分支上进行修复,修复完毕后在合并到master并删除debug分支,再次切换到dev分支,进行开发.

4 你们是否做代码review?

在创建一个review的分支,代码合并到一个分支,由组长或者租内资深的人做代码的review。

5 git rebase的作用?

git pull origin dev 等价于:git fetch origin dev; git merge origin/dev  约等于 git fetch origin dev; git rebase origin/dev

在公司下班忘记push代码的时候,回家后在家里开发好代码push到github后,在公司再次pull代码的时候回产生分叉,为了保持代码的整洁,不分叉。 

 6 什么是ORM?

对象关系映射,省去我们反复地编写sql语句,orm中创建一些对应关系,如 类-表,字段-列  对象-行 ORM帮助开发者通过操作类和对象,ORM将其转换成对应的sql语句再去执行,从数据库中去拿结果。更方便。

7 ORM和原生SQL的区别?

ORM最终的执行是转换为原生的SQL 去执行。原生sql 执行效率高。orm的开发效率高。orm的兼容性要好。

 8 列举你常用的django的组件?

Form组件,Cookie和Session,用户认证的组件,分页组件,CSRF组件,模板引擎。

9 django是一个什么样的框架?

大而全,且组件丰富的框架。

10 dom和jquery怎么转换?

dom-jquery  let v=doucment.getElementByid('a'); $(v)

jquery-dom  $('#aa')[0] 

 

 

 10    list1=[11,33,4,2,11,4,9,2] 去重后保持原来的顺序

1  list1=[11,33,4,2,11,4,9,2]  
2 #去重
3 ret1=list(set(list1))
4 #
5 ret2=sorted(ret1,key=list1.index)
6 print(ret2)

 11 按照年龄顺序排序

1 list3=[
2     {'name':'sakula','age':12},
3     {'name':'wang','age':10},
4     {'name':'ying','age':'20'}
5 ]
6 ret3=sorted(list3,key=lambda x:x['age'])

 12 为什么要做前后端分离?

职责划分明确,后端写python相关,前段写css,js相关。

前后端分离的项目,接口只用写一次,ios,Android,微信小程序都可以对接。

 13 谈谈你对restful规范的理解?

1 使用https代替http

2 在url中体现自己写的是API

3 在url中体现版本

4 名词(面向资源编程)

5 行为 method:get(获取),post(新建),put(更新),patch(局部更新),delete(删除)

6 条件 ?page=1&gender=2   条件传参

7 状态码 

8 错误信息 {'code':10001}

9 返回结果

10 hyper link

14 django rest framework 框架的作用?

 帮助开发者快速开发出遵循restful规范的API

15 django rest framework框架有哪些组件(10各组件)?

 权限,

 认证,

 节流,

 分页,

 解析器,

 序列化,(最重要的)

 路由,

 视图

 渲染器

 版本

 16 简述http协议?

- 基于socket
- 数据格式:
"GET /index?name=123&age=19 http1.1\r\nhost:www.luffyciti.com\r\ncontent-type:application/json...\r\n\r\n"

"POST /index http1.1\r\nhost:www.luffyciti.com\r\ncontent-type:application/json...\r\n\r\n{name:'alex',age:18}"

"POST /index http1.1\r\nhost:www.luffyciti.com\r\ncontent-type:application/enform.....\r\n\r\nname=alex&age=18&xx=19"
- 无状态短链接
一次请求一次响应之后断开连接

 

 

posted @ 2018-12-07 11:22  hexintong  阅读(170)  评论(0编辑  收藏  举报