【问题标题】:Tornado http server - Failed to load response data - React app chunksTornado http 服务器 - 无法加载响应数据 - 反应应用程序块
【发布时间】:2020-07-25 18:13:18
【问题描述】:

为 React 应用设置 Tornado Web 服务器,但无法加载块。

令人费解的是,当应用程序加载并与 Node 的 http-server -p 1800 和 Python 的 python -m http.server 1800 一起工作时

如您所见,我已向 Tornado 服务器添加了一些 CORS 标题,但仍然非常基本。

  1 import tornado.web
  2 import tornado.ioloop
  3
  4 class StaticHandler(tornado.web.RequestHandler):
  5
  6     def set_default_headers(self):
  7         print("setting headers")
  8         self.set_header("Access-Control-Allow-Origin", "*")
  9         self.set_header("Access-Control-Allow-Headers", "x-requested-with")
 10         self.set_header("Access-Control-Allow-Methods", 'POST, GET, OPTIONS')
 11
 12     def get(self):
 13         print("Rendering index.html")
 14         self.render("index.html")
 15
 16 if __name__ == '__main__':
 17
 18     app = tornado.web.Application([
 19         (r"/", StaticHandler),
 20     ])
 21     app.listen(1800)
 22     print("Listening on port 1800")
 23     tornado.ioloop.IOLoop.current().start()

【问题讨论】:

    标签: python reactjs tornado httpserver chunks


    【解决方案1】:

    Tornado 不提供这些文件是因为您没有要求它提供 - 您只是告诉它在 / 上提供您的 StaticHandler(不要与 Tornado 的 StaticFileHandler 混淆)。执行此操作的常用方法是将static_path 传递给Application 构造函数,但这将为/static/*.js 下的文件提供服务。如果你真的想直接从根目录提供这些文件,你可以通过为("/(.*)", tornado.web.StaticFileHandler, dict(path="."))添加路由来做到这一点

    还请记住,这也会将源代码提供给您的应用程序。如果您不希望这样,请为您的 Python 代码中的静态路径使用不同的目录。

    【讨论】:

      猜你喜欢
      • 2022-01-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-10
      • 1970-01-01
      • 2021-10-07
      • 2017-02-17
      • 1970-01-01
      相关资源
      最近更新 更多