flask七:一些小细节

1、在局域网中,让其他电脑访问我的网站:host参数

如果设置为0.0.0.0,则在局域网中,输入当前项目所在的ip+端口就可以访问这个项目
如果host设置为固定的ip,如host=‘‘192.168.1.136‘,则只有ip为192.168.1.136的电脑才能访问此项目

2、指定端口号:flask默认使用5000端口,port参数,可以指定此项目使用的端口

3、url唯一

如果在定义url的时候在url后面加了"/",则访问的时候,如果没有加"/",浏览器会自动加上"/"

如果在定义url的时候没有加"/",在访问的时候,如果加上了"/"就会报错,搜索引擎会将加了"/"和没加"/"的视为两个url

4、GET请求和POST请求

使用场景:
只从服务器获取资源,而不改变资源的信息,则使用GET请求
给服务器提交一些数据、文件,一般会对服务器的某些状态造成影响,使用POST请求

参数区别:
GET的参数在url后面用"?"来分割,使用key=value的形式传递(参数肉眼可见,不太安全)
POST的参数一般在body里面,根据不同的content-type使用不同的数据结构(在不抓包的情况下,看不见参数),同时,POST请求也可以把参数放在url中传递
因为POST可以传文件,所以就增加了很大的风险,对于有经验的黑客来讲,更不安全

实现:

在flask下,在route中,使用methods指定请求方法

原文地址:https://www.cnblogs.com/zhongyehai/p/11774333.html

时间: 2024-11-04 01:44:35

flask七:一些小细节的相关文章

Python 的lambda表达式的一些小细节

温故而知新,无意中发现以前实验lambda的时候写的测试代码,第一个反映就是,这是我写的????!!! 呵呵,想想XX语言刚把lambda正式加进去,python早早支持了,我可以大喊一声”Python是最好的语言“来找找骂吗? 哈哈. 不过,自从有了lambda,很多代码一行搞定.不过还是有很多不为一般人注意的小细节,详见下面代码: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 3

apache配置虚拟主机时需要注意到几个小细节

如今apache在web服务器这块市场占有率还是很高的,而配置虚拟主机现在也是用的非常多,不过在配置虚拟主机的时候一定要注意几个小细节. 首先要注意你的apache版本,注意是2.2还是2.4的. 配置2.2的时候,配置虚拟主机该这样写: NameVirtualHost ip:80   //注意此处与2.4不同 <VirtualHost ip:80> ServerName www1.myweb.com DocumentRoot "/myweb/vhost/www1" <

关于if语句中的小细节

if语句都会用,但是有一些小细节并不容易被发现. 比如我们不应该写这样的代码: if(flag==0) flag为布尔变量,布尔变量的值为真或假,用0表示假,真是多少是不一样的. 所以我们应该避免将布尔变量与0或1这样的整型值进行比较. 那么我们也不应该写这样的代码: if(i) i为一个整型变量,但是写成上面那样就会被人误以为是布尔值,良好的编程习惯是这样的: if(i==0)或if(i!=0) 还有重要的一点是,我们不能将float型和double型数据与0这种整型变量进行==或!=. 因为

做优秀产品经理的七个小窍门

产品经理是IT和互联网行业的热门职位,因为带着个经理的后缀,让人觉得比其他程序员.测试工程师什么的天生就高了一头.再加上各种媒体.大佬或成功人士把产品经理称为小“CEO”的说法,赋予这个职位各种光环,让不少新老同学决心投身这个潜力巨大的职业.另一方面,产品经理的确可以说是互联网团队的骨干,一边对接用户.市场.客户和各种外部伙伴,另一边连着开发.测试.运营等内部资源,经常直接影响或决定着一个功能.产品.业务甚至公司的成败.好的产品经理需要有感觉.有想法.能沟通.能设计,绝不是一天练成的.关于如何成

强壮你的C和C++代码30个小细节

1 初始化局部变量 使用未初始化的局部变量是引起程序崩溃的一个比较普遍的原因, 2 初始化WINAPI 结构体 许多Windows API都接受或则返回一些结构体参数,结构体如果没有正确的初始化,也很有可能引起程序崩溃.大部分Windows API结构体都必须有一个cbSIze参数,这个参数必须设置为这个结构体的大小. 注意:千万不要用ZeroMemory和memset去初始化那些包括结构体对象的结构体,这样很容易破坏其内部结构体,从而导致程序崩溃. 3 检测函数输入参数有效性 在函数设计的时候

注意编码工作中的小细节

人们常说"细节决定成败". 编码工作中,同样需要关注细节. 本文将给出3个小实例来说明编码中关注细节的重要性,同时给出作者对如何注意编码细节的一点见解(说的不对,请指正). 例1 这个问题如此地显而易见,竟然没有被发现. List<int> numList = new List<int>(); numList.Add(3); numList.Add(1); numList.Add(4); numList.Add(2); numList.Add(5); numLi

python isinstance 判断各种类型的小细节

1. 基本语法 isinstance(object, classinfo) Return true if the object argument is an instance of the classinfo argument, or of a (direct, indirect or virtual) subclass thereof. Also return true if classinfo is a type object (new-style class) and object is

[小细节,大BUG]记录一些小问题引起的大BUG(长期更新....)

[小细节,大BUG]  1. 在不久前,一个朋友出现了这样一个BUG:当UITableView加载cell的时候,自定义的cell,怎么显示,里面的文字总是显示不完全(注意,文字不长).然后,我帮忙给看了下,甚至把在storyBoard中将cell的相关属性都试了下,虽然可以解决,但是效果不理想.最终经过排查,终于发现问题所在:当自定义cell时,因为需要布局子控件,所以他重写了layoutSubviews方法,然而在此方法中没有调用[super layoutSubviews],所以造成了布局混

C++在使用Qt中SLOT宏须要注意的一个小细节

大家都知道C++虚函数的机制,对于基类定义为虚函数的地方,子类假设覆写,在基类指针或者引用来指向子类的时候会实现动态绑定. 但假设指针去调用非虚函数,这个时候会调用C++的静态绑定,去推断当前的指针是什么类型,就去运行哪个类型的函数. 非常有一种比較经典的使用方法,就是Template Method模式,基类定义一个非虚的算法框架,里面详细定义一些纯虚的函数片段,由子类来进行实现,从而实现了控制整体框架,但能够给客户自由定制的灵活性.这个使用方法事实上就是指针去调用了基类的方法,由方法的扩展之后

前台页面验证中需要注意的一个与VARCHAR2(N BYTE)和VARCHAR2(N CHAR)的小细节

1:一个小的测试实例 CREATE TABLE SALES.TEST_ ( TEST_BYTE VARCHAR2(5 BYTE), TEST_CHAR VARCHAR2(5 CHAR) )--TABLE CREATED INSERT INTO TEST_ (TEST_CHAR) VALUES('12345')--1 ROW INSERTED INSERT INTO TEST_ (TEST_BYTE) VALUES('12345')--1 ROW INSERTED INSERT INTO TEST