from flask import Flask,jsonify
app = Flask(__name__) #使用jsonify模块来让网页直接显示json数据
@app.route('/json')
def re_json():
#定义数据格式
json_dict={'id':10,'title':'flask的应用','content':'flask的json'}
#使用jsonify来讲定义好的数据转换成json格式,并且返回给前端
return jsonify(json_dict) if __name__ == "__main__":
app.run()

  

这是源代码不加任何配置

运行应是以上结果

有四种解决的途径:

一:直接加在代码中

from flask import Flask,jsonify
app = Flask(__name__)
#解决中文乱码的问题,将json数据内的中文正常显示
# app.config['JSON_AS_ASCII'] = False
#开启debug模式
# app.config['DEBUG'] = True #使用jsonify模块来让网页直接显示json数据
@app.route('/json')
def re_json():
#定义数据格式
json_dict={'id':10,'title':'flask的应用','content':'flask的json'}
#使用jsonify来讲定义好的数据转换成json格式,并且返回给前端
return jsonify(json_dict) if __name__ == "__main__":
app.run()

  二:从配置文件里来加载配置

首先要添加文件

引入加载文件

from flask import Flask,jsonify
app = Flask(__name__)
#从配置文件里来加载配置
app.config.from_pyfile('config.ini')
#使用jsonify模块来让网页直接显示json数据
@app.route('/json')
def re_json():
#定义数据格式
json_dict={'id':10,'title':'flask的应用','content':'flask的json'}
#使用jsonify来讲定义好的数据转换成json格式,并且返回给前端
return jsonify(json_dict) if __name__ == "__main__":
app.run()

  三:从环境变量来加载配置

首先要设置环境变量,找到文件路径配置

from flask import Flask,jsonify
app = Flask(__name__) #从环境变量中来加载配置
app.config.from_envvar('appconfig')
#使用jsonify模块来让网页直接显示json数据
@app.route('/json')
def re_json():
#定义数据格式
json_dict={'id':10,'title':'flask的应用','content':'flask的json'}
#使用jsonify来讲定义好的数据转换成json格式,并且返回给前端
return jsonify(json_dict) if __name__ == "__main__":
app.run()

  四:从配置对象来加载配置

from flask import Flask,jsonify

class Config(object):
DEBUG=True
JSON_AS_ASCII=False app = Flask(__name__) #从配置对象来加载配置
app.config.from_object(Config)
#使用jsonify模块来让网页直接显示json数据
@app.route('/json')
def re_json():
#定义数据格式
json_dict={'id':10,'title':'flask的应用','content':'flask的json'}
#使用jsonify来讲定义好的数据转换成json格式,并且返回给前端
return jsonify(json_dict) if __name__ == "__main__":
app.run()

  以上四种效果如下

解决flask中文乱码的问题的更多相关文章

  1. 解决Eclipse中文乱码 - 技术博客 - 51CTO技术博客 http://hsj69106.blog.51cto.com/1017401/595598/

    解决Eclipse中文乱码 - 技术博客 - 51CTO技术博客  http://hsj69106.blog.51cto.com/1017401/595598/

  2. Ubuntu14.04安装中文输入法以及解决Gedit中文乱码问题

    1 设置中文显示环境 1. 打开System Settings 2. 打开Personal-> Language Support. 会弹出如下对话框,提示你“语言支持没安装完整”. 点击“Rem ...

  3. Ubuntu14.04安装中文输入法以及解决Gedit中文乱码问题[转载]

    转载自:http://www.cnblogs.com/zhcncn/p/4032321.html 写在前面:解决gedit 在txt文件格式出现乱码的问题,在我自己的操作中是需要把系统设置成中文显示环 ...

  4. 解决TortoiseCVS中文乱码

    解决TortoiseCVS中文乱码必备,解决方法: 第一:卸载和TortoiseCVS安装一起安装的CVSNT. 第二:安装本版本CVSNT. CVSNT下载地址:http://down.51cto. ...

  5. 如何解决PHP中文乱码问题

    如何解决PHP中文乱码问题 一.解决HTML中中文乱码问题方法    1.在head标签里面加入UTF8编码(国际化编码):UTF-8是没有国家的编码,也就是独立于任何一种语言,任何语言都可以使用的. ...

  6. springMvc解决json中文乱码

    springMvc解决json中文乱码 springMvc解决json中文乱码,springMvc中文乱码,spring中文乱码 >>>>>>>>> ...

  7. 解决URL中文乱码问题--对中文进行加密、解密处理

    解决URL中文乱码问题--对中文进行加密.解密处理 情景:在资源调度中,首先用户需要选择工作目标,然后跟据选择的工作目标不同而选择不同的账号和代理ip.处理过程如下:点击选择账号,在js中获取工作目标 ...

  8. request.getParameter()及解决数据库中文乱码问题——实习第七天

    今天老师让我们自己做一个小项目,我开始着手于实现这个小项目.途中遇到过几个小问题,在此做个小记录, 相信后期还是会借鉴的. 1,从前台传入数据给后台传入数据,并没有传入成功: 输出的为Null. 当然 ...

  9. Hession集成Spring + maven依赖通讯comm项目 + 解决@ResponseBody中文乱码

    hessian结合spring的demo         hessian的maven依赖: <!-- hessian --> <dependency>         < ...

随机推荐

  1. Docker CE 各安装方法

    1.Docker CE 镜像源站 使用官方安装脚本自动安装 curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun 2.U ...

  2. Hbase学习02

    第2章 Apache HBase配置 本章在“入门”一章中进行了扩展,以进一步解释Apache HBase的配置. 请仔细阅读本章,特别是基本先决条件,确保您的HBase测试和部署顺利进行,并防止数据 ...

  3. layui打印html页面转成pdf

    <!DOCTYPE html><html lang="zh"><head>     <meta charset="UTF-8&q ...

  4. 转---变量LEGB规则

    Python 变量作用域的规则是 LEGB LEGB含义解释: L -- Local(function):函数内的名字空间 E -- Enclosing function locals:外部嵌套函数的 ...

  5. 细说ORM之Entity FrameWork系列(被替换)

    一. 谈情怀 从第一次接触开发到现在(2018年),接近五年时间了,最初阶段连接数据库,使用的是[SQL语句+ADO.NET],那时候,什么存储过程.什么事务 统统不理解,生硬的将SQL语句传入SQL ...

  6. vue watch bug记录

    watch中,写箭头函数,获取不到正确的this 换成function,正确取到this

  7. glide:4.7.1 与 26.1.0冲突

    implementation 'com.android.support:support-v4:26.1.0'implementation 'com.github.bumptech.glide:glid ...

  8. ImageView获取宽高

    在Android里放置一个ImageView im1,宽和高都是200.以下代码都是直接在OnCreate里使用. 1.在Android OnCreate里如果直接使用iv.GetWidth()返回值 ...

  9. C++ vector和list的主要用法区别

    vector可以直接通过下标访问,list不可以 1.vector ; i < userTypes.size(); i++) { str = userTypes[i].typeName; } 2 ...

  10. Excel复制粘贴假死

    把打印机都删除了试一下. 如果还有问题,就把迅雷监听关掉.