Flask v0.11 发布, Python的WEB框架

jopen 8年前
   <p style="text-align: center;"><img alt="" src="https://simg.open-open.com/show/d2cce2ae0fa4309a2d80dd631d8c1a45.png" /></p>    <p>Flask是一个基于Python的WEB框架,特点:</p>    <ul>     <li>自带开发服务器和调试器</li>     <li>集成单元测试</li>     <li>RESTful请求⽀支持</li>     <li>100% WSGI兼容</li>     <li>基于Unicode</li>    </ul>    <p>Flask v0.11发布于2016 5月29日,代号苦艾酒。</p>    <h2>更新日志 </h2>    <ul>     <li>flask.jsonify()新增序列化顶级数组的支持 。这引入了在老式浏览器的一个安全风险。参考JSON安全细节。</li>     <li>添加before_render_template信号。</li>     <li>添加**kwargs到flask.Test.test_client(),用于支持 flask.Flask.test_client_class 构造函数传递额外的关键字参数。</li>     <li>添加SESSION_REFRESH_EACH_REQUEST配置项(key),用于控制set-cookie行为。如果设置为True,每个请求后永久性会话将被刷新,并延长他们的有效期。如果设置为假,只有会话变化它才会被修改。非永久性会话不受此影响,如果浏览器窗口关闭,则会过期。</li>     <li>使Flask支持自定义JSON Mimetypes,用于传入的数据。</li>     <li>添加 从一个视图函数的表单(response, headers)返回元组的支持。</li>     <li>添加flask.Config.from_json()。</li>     <li>添加flask.Flask.config_class。</li>     <li>添加flask.config.Config.get_namespace()。</li>     <li>在调试模式,模板不再自动重新加载。可以通过新加的TEMPLATES_AUTO_RELOAD配置项来配置。</li>     <li>增加了一个Python 3.3的命名空间装载限制的解决方法。</li>     <li>添加显式的根路径,用于支持Python 3.3的命名空间包</li>     <li>添加 flask和flask.cli模块用于在本地调试服务器上通过简单命令启动系统 。建议替代旧的flask.run()方法,由于不同的设计,它运行的更快和更可靠,也可以取代Flask-Script。</li>     <li>错误处理程序,首先检查匹配的特定类,从而允许捕捉HTTP异常类(werkzeug.exceptions)。这使得写扩展的作者在创建异常会有HTTP错误时的默认结果,但如果需要,可以用自定义错误处理程序捕获。</li>     <li>添加flask.Config.from_mapping()</li>     <li>即使禁用了调试,Flask也会记录日志。目前日志处理的默认格式是硬编码的,可以通过LOGGER_HANDLER_POLICY配置项禁用。</li>     <li>删除过时的模块功能。</li>     <li>添加EXPLAIN_TEMPLATE_LOADING配置项,指示启用时Flask如何定位模板。这应该有助于用户在错误模板加载时进行调试。</li>     <li>在顺序注册时强制蓝图处理(blueprint handling),用于模板载入。</li>     <li>改变测试套件到py.test。</li>     <li>废弃request.json,建议用request.get_json()。</li>     <li>jsonify()方法 添加 “pretty”和“compressed” 分隔符定义。当JSONIFY_PRETTYPRINT_REGULAR=False,会去除不必要的空格,用于减少JSON响应(responses)大小。</li>     <li>JSON响应(responses)现在是用换行符终止,因为它是UNIX文本文件结束符的惯例,当这个换行符丢失,一些客户端不能很好的处理。参考<a href="/misc/goto?guid=4958991022245897540">https://github.com/pallets/flask/pull/1262 </a>—— 这是最初的一部分<a href="/misc/goto?guid=4958991022344883885">https://github.com/kennethreitz/httpbin/issues/168</a></li>     <li>如果用户使用lowercase-version选项注册了一个重写规则,自动提供的OPTIONS方法现在被正确禁用(问题 #1288)。</li>     <li>flask.json.jsonify现在支持datetime.date类型(pull request #1326)。</li>     <li>已经被上下文拆解处理程序捕获的异常,不在泄漏异常信息(pull reques #1393)。</li>     <li>允许自定义Jinja环境子类(pull request #1422)。</li>     <li>flask.g现在有pop()和setdefault方法。</li>     <li>打开flask.templating.render_template_string AutoEscape为默认(pull request #1515)。</li>     <li>flask.ext现在已过时(pull request #1484)。</li>     <li>在服务器操作系统,如果文件名是无效,send_from_directory现在将抛出BadRequest异常(pull request #1763)。</li>     <li>添加JSONIFY_MIMETYPE配置变量(pull request #1728)。</li>     <li>拆解处理过程中的异常将不再离开错误应用程序上下文周围</li>    </ul>    <h2>下载</h2>    <ul>     <li><a href="/misc/goto?guid=4958991022435264936" rel="nofollow"><strong>Source code</strong> (zip)</a></li>     <li><a href="/misc/goto?guid=4958991022532226816" rel="nofollow"><strong>Source code</strong> (tar.gz)</a></li>     <li><a href="/misc/goto?guid=4958991022620820122">Flask-0.11-py2.py3-none-any.whl</a> (<a href="https://pypi.python.org/pypi?:action=show_md5&digest=fa0c2ac5c6980fc92e2591ebfcad706c" title="MD5 Digest">md5</a>)</li>     <li><a href="/misc/goto?guid=4958991022766743927">Flask-0.11.tar.gz</a> (<a href="https://pypi.python.org/pypi?:action=show_md5&digest=89fbdcb04b7b96c5b24625ae299cf48b" title="MD5 Digest">md5</a>)</li>    </ul>    <h2> </h2>