我有一个在 Tornado Web 服务器上运行的 Flask 应用程序。我希望能够从客户端调用 OPTIONS。我承认我不是 100%,这是解决这个问题的最佳方式。我找到了这个,并将其放入我的烧瓶应用程序中。这适用于除OPTIONS
. 当我将应用程序放在 Tornado 上时,我将其添加到我的 tornado 应用程序中:
class BaseHandler(tornado.web.RequestHandler):
def set_default_headers(self):
self.set_header("Access-Control-Allow-Origin", "*")
self.set_header("Access-Control-Allow-Credentials", "true")
self.set_header("Access-Control-Allow-Methods", "GET,PUT,POST,DELETE,OPTIONS")
self.set_header("Access-Control-Allow-Headers", "Content-Type, Authorization, Accept")
这将为所有请求返回以下标头,除了OPTIONS
:
Access-Control-Allow-Headers:CONTENT-TYPE, AUTHORIZATION, ACCEPT
Access-Control-Allow-Methods:HEAD, GET, PUT, POST, OPTIONS, DELETE
Access-Control-Allow-Origin:*
Access-Control-Max-Age:21600
Content-Length:3493
Content-Type:text/html; charset=utf-8
Server:TornadoServer/3.1
但OPTIONS
只是返回:
Content-Type: text/html; charset=utf-8
Content-Length: 0
Allow: HEAD, GET, PUT, POST, OPTIONS, DELETE
Server: TornadoServer/3.1
将完整标题返回到需要OPTIONS
什么?