【python面试指北】7. web框架

WSGI

什么是WSGI

  • python web server gateway inteerface
  • 解决python web server 乱象mod_python,CGI,FastCGI等
  • 描述了web server(uwsgi)如何与web框架(django)交互,web框架如何处理请求

python web框架

MVC

ORM

  • 用于实现业务对象与数据表中的字段映射
  • 优势:代码更加面对对象,代码量更少,灵活性高,提升开发效率

web安全

SQL注入

web安全一大原则:永远不要相信用户的任何输入

  • 对输入参数做好检查(类型和范围):过滤和转移特殊字符
  • 不要直接拼接sql,使用ORM可以大大降低sql诸如风险
  • 数据库层:做好权限管理配置,不要铭文存储敏感信息

XSS(cross site scripting),跨站脚本攻击

  • 恶意用户将代码植入到提供给其他用户使用的页面中,未经转义的恶意代码输出到其他用户的浏览器被执行
  • 用户浏览页面的时候嵌入页面中的脚本(js)会被执行,攻击用户
  • 主要分为两类:反射性(非持久型),存储型(持久型)

CSRF

前后端分离

优点

  • 前后端解耦,接口复用(前端和客户端公用接口),减少开发量。
  • 各司其职,前后端同步开发,提升工作效率。定义好接口规范。
  • 更有利于调试(mock),测试和运维部署

restful

Representational State Transfer

  • 表现层状态转移

  • 资源,表现层,状态转化

  • 是一种以资源为中心的web软件架构风格,可以用ajax和restful web服务构建应用。

  • resource:使用URI指定的一个实体

  • representation:资源的表现方式,比如图片、HTML文本等

  • State Transfer: GET,POST,PUT,DELETE,HTTP动词来操作资源,实现资源状态的改变。

  • 所有事物抽象为资源,资源对应唯一的标识(identifier)

  • 资源通过接口进行操作实现状态转移,操作本身是无状态的

  • 对资源的操作不会改变资源的标识

HTTPS

你可能感兴趣的:(【python面试指北】7. web框架)