flask获取用户真实ip地址,flask 实用 nginx 反向代理 得到ip全部为127.0.0.1获取真实ip
flask获取用户真实ip地址 参考 https://blog.cs...
flask获取用户真实ip地址 参考 https://blog.cs...
Python Flask获取GET参数 Flask 获取GET参数F...
在我们平时写项目以及做算法题时,经常会遇到截取字符串,截取数组,然后我发现每次用的方法都不一样,但是又长得很像,很容易搞不清楚,所以这篇博客就浅浅地来说一说这个问题。
我们常用的分割方法主要有split、splice、slice、substr、substring。下面就通过一些案例和介绍来区分一下吧!
1、split()
通过参数将字符串截取并转为一个新数组(下面的例子意思就是如果字符串中出现‘-’,就会分割,将其加入新数组中),eg:
let str=’a-bc-def’;
let str_split=str.split(‘-‘);//[a,bc,def]
2、splice()
删除、添加原数组;会改变原数组,参数一:开始操作的元素的位置下标,参数二:要删除的元素个数;参数三:在下标为参数一的位置添加的内容;返回值为删除各项所组成的新数组,无删除时则返回空数组。eg:
let str=[‘a’,’bc’,’def’];
let str_splice=str.splice(1,0,’bb’);
console.log(str);//[‘a’,’bb’,’bc’,’def’];
console.log(str_splice)//[]
3、slice()
数组、字符均可使用;参数一:开始截取的下标;参数二:截取的截至位置但不包含该下标;返回截取的新数组
var str=[‘a’,’bc’,’def’,’gh’];
var str_slice=str.slice(1,3);//[‘bc’,’def’]
4、substr()
字符串使用,用于截取指定长度字符串;参数一:开始截取的下标位置;参数二:要截取的字符串长度;返回截取的新字符串
var str=’ab-cd-ef’;
str_substr=str.substr(1,4)//b-cd
5、substring()
var str=’ab-cd-ef’;
var str_substring=str.substring(1-4);//b-c
字符串的使用;参数一:开始截取的位置;参数二:结束截取的下标,但不包含该下标字符;返回截取的新字符;(第二个参数应该大于第一个参数,如果出现第一个参数大于第二个参数的情况,substring方法会自动更换两个参数的位置)
import time
from flask import Flask, request, render_template
# 1.初始化app
app = Flask(__name__,template_folder=’temps’)
# 配置
app.config[‘debug’]=True
app.config[‘port’]=5002
def timer(func):
def decorator(*args,**kwargs):
print(time.time())
return func(*args,**kwargs) # 此处必须返回被装饰对象的执行结果,此处相当于return render_template(‘index.html’)
return decorator
# 2.添加路由 view function
@app.route(‘/hello’)
@app.route(‘/sign’)
@app.route(“/login”)
@timer # 装饰器必须放app.route()下面
def login():
datas = request.args # 对后台服务发起get请求的数据会被存在request.args对象中。
print(datas.get(‘name’))
return render_template(‘index.html’)
if __name__ == ‘__main__’:
app.run(debug=app.config[“debug”],port=app.config[“port”])
【实现用户注册,登录和登出】但是用 Flask + MySQL(py...
from flask import Flask, jsonify
from flask import request
app = Flask(__name__)
@app.route(‘/’, methods=[‘GET’, ‘POST’])
def hello_world():
print(‘请求方式为——->’, request.method)
args = request.args.get(“name”) # 获取 get 参数
form = request.form.get(‘data’) # 获取 post 参数
# main(form) # 调用我们的逻辑函数
get_html(form)
print(“=========成功 生成 index.html================”)
return jsonify(args=args, form=form)
if __name__ == ‘__main__’:
app.run(host=”0.0.0.0″, port=5800, debug=True)
pipreqs(找当前项目依赖的包)
1.安装
pipreqs可以帮你找到当前项目的所有组件及其版本。就是当别人给你一个程序的时候,你要在自己电脑上运行起来,就需要安装程序所依赖的组件,总不能自己一个一个找吧。
# 安装
pip3 install pipreqs
2.使用步骤
# 使用步骤
1.在项目根目录下执行命令
pipreqs ./ –encoding=utf-8
2.可以看到生成了requirements.txt文件
3.执行下面代码就会把项目用到的所有组件装上
pip3 install -r requirements.txt
3.效果
# requirements.txt
Flask_Migrate==2.3.1
redis==3.0.1
Flask==1.0.2
alembic==1.0.7
Flask_Script==2.0.6
Flask_SQLAlchemy==2.3.2
Flask_Session==0.3.1
SQLAlchemy==1.2.17
Flask jinja2模板中if语句使用详解 if条件判断语句: ...