Python Tornado之跨域请求与之跨域请求与Options请求方式请求方式
主要介绍了Python Tornado之跨域请求与Options请求方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编
过来看看吧
问题背景问题背景
公司的项目是前后端分离,前端Vue+后端JavaSpringBoot为主,部分功能是PythonTornado,那么需要支持一个是跨域以及Options请
求。
Option请求请求
只需要跟处理get一样处理options请求就可以了。vue一般需要访问options方法, 如果报错则很难继续,所以只要通过就行了,当然需
要其他逻辑就自己控制。
#COM串口
class SerialHandler(BaseHandler):
#处理GET请求
def get(self):
self.write('血压监测结果为:')
#省略其他逻辑
#处理OPTIONS请求
def options(self):
#返回方法1
#self.set_status(204)
#self.finish()
#返回方法2
self.write('{"errorCode":"00","errorMessage","success"}')
跨域请求跨域请求
既然是前后端分离,那就肯定会遇到cros跨域请求难题,可以设置一个BaseRequest,然后继承即可。
class BaseHandler(tornado.web.RequestHandler):
#blog.csdn.net/moshowgame 解决跨域问题
def set_default_headers(self):
self.set_header('Access-Control-Allow-Origin', '*')
self.set_header('Access-Control-Allow-Headers', '*')
self.set_header('Access-Control-Max-Age', 1000)
#self.set_header('Content-type', 'application/json')
self.set_header('Access-Control-Allow-Methods', 'POST, GET, OPTIONS')
self.set_header('Access-Control-Allow-Headers',#'*')
'authorization, Authorization, Content-Type, Access-Control-Allow-Origin, Access-Control-Allow-Headers, X-Requested-By, Access-Control-Allow-Methods')
补充知识:补充知识:Python之之flask框架配置接口,处理跨域框架配置接口,处理跨域
Flask框架介绍框架介绍
Flask是当下流行的Web框架,它是用Python实现的。
Flask显著的特点是:它是一个“微”框架。”微”意味着Flask旨在保持核心的简单,但同时又易于扩展。默认情况下,Flask 不包含数据库
抽象层、表单验证,或是其它任何已有多种库可以胜任的功能。然而,Flask 支持用扩展来给应用添加这些功能。众多的扩展提供了数据
库集成、表单验证、上传处理、各种各样的开放认证技术等功能。Flask的这些特性,使得它在Web开发方面变得非常流行。
Flask安装安装
通过python的pip包管理工具进行安装,python3之后下载python也会自动带出pip。
验证pip是否安装:打开命令行直接输入pip,如果出现下面的显示则表示已安装
安装flask: