http请求

Django面试集锦(1-50)

僤鯓⒐⒋嵵緔 提交于 2020-02-10 18:06:39
目录 1、Django ORM查询中select_related和prefetch_related的区别? 2、only与defer的用法? 3、Django ORM是什么? 4、Django创建项目命令? 5、Django创建项目后,项目文件下的组成部分?(对MVT的理解) 6、对MVC,MTV模型的理解? 6、Django中models利用ORM对Mysql进行查表的语句? 7、Django中间件的使用? 8、Django生命周期流程图? 9、谈一下对uWSGI和nginx的理解? 10、说一下nginx和uWISG服务器之间如何配合工作的? 11、Django开发中数据库做过什么优化? 12、验证码过期时间怎么设置? 13、python中三大框架各自的应用场景? 14、Django如何提升性能(高并发)? 15、什么是restful api,谈谈你的理解? 16、如何设计符合RESTful风格的API? 16、Django关闭浏览器,怎么清除cookies和session? 17、简述Django下的缓存机制? 18、对cookie和session的了解?他们能单独使用吗? 19、Django中QuerySet的get和filter方法的区别? 20、Django对数据查询结果排序的做法? 21、数据库的迁移命令? 22、uWSGI与uwsgi区别? 23

获取允许的HTTP请求方式

爱⌒轻易说出口 提交于 2020-02-10 17:58:53
HTTP请求方式 方式 功能 GET 请求指定页面信息,并返回实体主体。 HEAD 类似于 GET 请求,只不过返回的响应中没有具体的内容,用于获取报头。 POST 向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST 请求可能会导致新的资源的建立和/或已有资源的修改。 PUT 从客户端向服务器传送的数据取代指定的文档的内容。 DELETE 请求服务器删除指定的页面。 CONNECT HTTP/1.1 协议中预留给能够将连接改为管道方式的代理服务器。 OPTIONS 允许客户端查看服务器的性能。 TRACE 回显服务器收到的请求,主要用于测试或诊断。 PATCH 是对 PUT 方法的补充,用来对已知资源进行局部更新 。 引用链接 查看允许的请求方式 Python import requests url = 'http://192.168.246.130' re = requests . options ( url ) print ( re . headers [ 'Allow' ] ) #输出响应头中的Allow字段 输出的是允许的请求方式 netcat nc . exe 192 . 168 . 246 . 130 80 OPTIONS / HTTP / 1 . 1 HOST:192 . 168 . 246 . 130

Nginx的安装、基本用法、与php-frm配置,配置文件的解释

坚强是说给别人听的谎言 提交于 2020-02-10 15:24:34
什么是Nginx Nginx 怎么读?---A: 恩静埃克斯 = Engine X---B: 恩静克思 [ˈendʒɪnks] Nginx是lgor Sysoev为俄罗斯访问量第二的rambler.ru站点设计开发的。从2004年发布至今,凭借开源的力量,已经接近成熟与完善。 Nginx功能丰富,可作为HTTP服务器,也可作为反向代理服务器,邮件服务器。支持FastCGI、SSL、Virtual Host、URL Rewrite、Gzip等功能。并且支持很多第三方的模块扩展。 Nginx的稳定性、功能集、示例配置文件和低系统资源的消耗让他后来居上,在全球活跃的网站中有12.18%的使用比率,大约为2220万个网站。 反正很牛逼。 Nginx常用功能 1、Http代理,反向代理 作为web服务器最常用的功能之一,尤其是反向代理。 Nginx在做反向代理时,提供性能稳定,并且能够提供配置灵活的转发功能。Nginx可以根据不同的正则匹配,采取不同的转发策略,比如图片文件结尾的走文件服务器,动态页面走web服务器,只要你正则写的没问题,又有相对应的服务器解决方案,你就可以随心所欲的玩。并且Nginx对返回结果进行错误页跳转,异常判断等。如果被分发的服务器存在异常,他可以将请求重新转发给另外一台服务器,然后自动去除异常服务器。 2、负载均衡 Nginx提供的负载均衡策略有2种

HTTP的长连接和短连接

我是研究僧i 提交于 2020-02-10 13:07:39
转载自: https://www.cnblogs.com/cswuyg/p/3653263.html 本文总结&分享网络编程中涉及的长连接、短连接概念。 关键字:Keep-Alive,并发连接数限制,TCP,HTTP 一、什么是长连接 HTTP1.1规定了默认保持长连接(HTTP persistent connection ,也有翻译为持久连接),数据传输完成了保持TCP连接不断开(不发RST包、不四次握手),等待在同域名下继续用这个通道传输数据;相反的就是短连接。  HTTP首部的Connection: Keep-alive是HTTP1.0浏览器和服务器的实验性扩展,当前的HTTP1.1 RFC2616文档没有对它做说明,因为它所需要的功能已经默认开启,无须带着它,但是实践中可以发现,浏览器的报文请求都会带上它。如果HTTP1.1版本的HTTP请求报文不希望使用长连接,则要在HTTP请求报文首部加上Connection: close。《HTTP权威指南》提到,有部分古老的HTTP1.0 代理不理解Keep-alive,而导致长连接失效:客户端-->代理-->服务端,客户端带有Keep-alive,而代理不认识,于是将报文原封不动转给了服务端,服务端响应了Keep-alive,也被代理转发给了客户端,于是保持了“客户端-->代理”连接和“代理-->服务端”连接不关闭,但是

Ehcache 整合Spring 使用页面、对象缓存

醉酒当歌 提交于 2020-02-10 04:57:50
Ehcache 在很多项目中都出现过,用法也比较简单。一般的加些配置就可以了,而且Ehcache可以对页面、对象、数据进行缓存,同时支持集群/分布式缓存。如果整 合Spring、Hibernate也非常的简单,Spring对Ehcache的支持也非常好。EHCache支持内存和磁盘的缓存,支持LRU、 LFU和FIFO多种淘汰算法,支持分布式的Cache,可以作为Hibernate的缓存插件。同时它也能提供基于Filter的Cache,该 Filter可以缓存响应的内容并采用Gzip压缩提高响应速度。 Email:hoojo_@126.com Blog: http://blog.csdn.net/IBM_hoojo http://hoojo.cnblogs.com/ 一、准备工作 如果你的系统中已经成功加入Spring、Hibernate;那么你就可以进入下面Ehcache的准备工作。 1、 下载jar包 Ehcache 对象、数据缓存: http://ehcache.org/downloads/destination?name=ehcache-core-2.5.2-distribution.tar.gz&bucket=tcdistributions&file=ehcache-core-2.5.2-distribution.tar.gz Web页面缓存: http:/

JavaWeb——Http

*爱你&永不变心* 提交于 2020-02-09 19:33:35
Http 1、什么是Http http(超文本传输协议)是一个简单的请求-响应协议,它通常运行在TCP之上。 文本:html 字符串 ...... 超文本:图片,音乐,视频,定位,地图...... 默认端口:80 2、两个时代 http1.0 HTTP/1.0:客户端可以与Web服务器连接,只能获得一个Web资源,断开连接 http2.0 HTTP/2.0:客户端可以与web服务器连接后,可以获得多个web资源 3、Http请求 客户端--->发请求--->服务器 百度: Request URL: https://www.baidu.com/ 请求地址 Request Method: GET get方法/post方法 Status Code: 200 OK 状态码:200 Remote(远程) Address: 39.156.66.18:443 Accept: text/html Accept-Encoding: gzip, deflate, br Accept-Language: zh-CN,zh;q=0.9 //语言 Cache-Control: max-age=0 Connection: keep-alive 3.1、请求行 请求行中的请求方式: GET 请求方式:Get,Post,HEAD,DELETE,PUT,TRACT... get:请求能够携带的参数比较少,大小有限制

服务器有新消息主动推送给客户端浏览器

倖福魔咒の 提交于 2020-02-09 15:59:33
前言 通常情况下,无论是web浏览器还是移动app,我们与服务器之间的交互都是主动的,客户端向服务器端发出请求,然后服务器端返回数据给客户端,客户端浏览器再将信息呈现,客户端与服务端对应的模式是: 客户端请求--服务端响应,这种机制对于信息变化不是特别频繁的应用尚可,但对于实时要求高、海量并发的应用来说显得捉襟见肘,尤其在当前业界移动互联网蓬勃发展的趋势下,高并发与用户实时响应是 Web 应用经常面临的问题,比如金融证券的实时信息,Web 导航应用中的地理位置获取,社交网络的实时消息推送,新闻的订阅,天气的提醒等。这些情况下,需要服务器主动推送消息给客户端。 那么在这样的模式下,会有几个问题需要我们思考下: 1.应用服务器如何确定每一个应用所在的设备 2.服务器端是如何将消息推送到客户端的,客户端又不像服务器有一个固定的地址 带着这些疑问我们来研究一下目前有哪些技术可以解决该问题: 一、Ajax轮询 所谓的Ajax轮询,其实就是定时的通过Ajax查询服务端,客户端按规定时间定时像服务端发送ajax请求,服务器接到请求后马上返回响应信息并关闭连接。 这种技术方式实现起来非常简单,但是这种方式会有非常严重的问题,就是需要不断的向服务器发送消息询问,这种方式会对服务器造成极大的性能浪费。 还有一个类似的轮询是使用JSONP跨域请求的方式轮询,在实现起来有差别,但基本原理都是相同的

服务器 主动 推送 客户端浏览器 消息***

生来就可爱ヽ(ⅴ<●) 提交于 2020-02-09 11:07:19
前言 通常情况下,无论是web浏览器还是移动app,我们与服务器之间的交互都是主动的,客户端向服务器端发出请求,然后服务器端返回数据给客户端,客户端浏览器再将信息呈现,客户端与服务端对应的模式是: 客户端请求--服务端响应,这种机制对于信息变化不是特别频繁的应用尚可,但对于实时要求高、海量并发的应用来说显得捉襟见肘,尤其在当前业界移动互联网蓬勃发展的趋势下,高并发与用户实时响应是 Web 应用经常面临的问题,比如金融证券的实时信息,Web 导航应用中的地理位置获取,社交网络的实时消息推送,新闻的订阅,天气的提醒等。这些情况下,需要服务器主动推送消息给客户端。 那么在这样的模式下,会有几个问题需要我们思考下: 1.应用服务器如何确定每一个应用所在的设备 2.服务器端是如何将消息推送到客户端的,客户端又不像服务器有一个固定的地址 带着这些疑问我们来研究一下目前有哪些技术可以解决该问题: 一、Ajax轮询 所谓的Ajax轮询,其实就是定时的通过Ajax查询服务端,客户端按规定时间定时像服务端发送ajax请求,服务器接到请求后马上返回响应信息并关闭连接。 这种技术方式实现起来非常简单,但是这种方式会有非常严重的问题,就是需要不断的向服务器发送消息询问,这种方式会对服务器造成极大的性能浪费。 还有一个类似的轮询是使用JSONP跨域请求的方式轮询,在实现起来有差别,但基本原理都是相同的

web/http服务器实现

徘徊边缘 提交于 2020-02-08 16:12:44
文章目录 项目开发流程 程序编码 项目实例 项目开发流程 需求分析:实现基本的HTTP服务器,支持浏览器的访问(支持标准http协议) 接收浏览器发送HTTP请求; 解析请求数据,请求方式(GET),请求文件(html…),协议版本; 根据请求构建响应头,发送响应头: HTTP/1.1 200 Ok HTTP/1.1 404 File not found 根据请求文件,从服务器目录中获取对应的文件,发送给浏览器。 概要设计:绘制基本框图 详细设计:绘制程序流程图 web整体框架总流程 最外层流程 程序读取配置文件流程 子进程处理客户端请求流程 服务器初始化流程 正常请求响应流程 响应404流程 4. 编码:编写程序代码 程序编码 创建TCP并发服务器(多进程、多线程) 从配置中读取端口号–>将端口号写入配置文件configure中,创建服务器时从配置文件中读取端口号。(在启动服务器时添加-b选项使得服务器工作在守护进程模式) int sockfd = socket ( AF_INET , SOCK_STREAM , 0 ) ; if ( - 1 == sockfd ) { perror ( "socket" ) ; return - 1 ; } struct sockaddr_in server_addr ; server_addr . sin_famlily = AF_INET

高性能网站建设的14个原则

孤人 提交于 2020-02-07 15:40:16
今日大致浏览了一下《 High Performance Web Sites 》。本书的中文版是《 高性能网站建设指南 》。 本书另有对其中个别问题深入探究的进阶篇《 Even Faster Web Sites 》,中译《 高性能网站建设进阶指南 》。 作者介绍上面的豆瓣链接中有,就不再照搬过来了。 这本书中给出了14条网站性能提升的原则,每个原则独立成章,配有示例。这些原则大多数都非常实用,适合站点架构师、前端工程师。其中对于前端工程师的意义更大一些。 这次看的是原版。我对于Web开发较缺乏实践经验,加之看得匆忙,因此可能存在遗漏、表述不当之处,希望广大网友不吝指正。 原则1 减少HTTP请求数 构造请求、等待响应需要时间,因此请求数量越少越好。减少请求的总体思路就是合并资源,减少显示一个页面需要的文件数。 1. Image Map 通过设置<img>标签的usemap属性与使用<map>标签可以在一幅图片上切分出多个区域,指向不同的链接。比起使用多幅图片分别构造链接减少了请求数。 2. CSS Sprite(CSS贴图整合/贴图拼合/贴图定位) 通过设置元素的background-position样式做到。一般用于界面图标。典型的可以参考TinyMCE编辑器上方的那些小按钮。多个小图实质是从一个统一的大图通过不同的偏移量裁剪而来,这样加载界面上的众多按钮实际上只要请求一次