【问题标题】:Python Tornado won't load .Css filePython Tornado 不会加载 .Css 文件
【发布时间】:2019-08-20 04:26:59
【问题描述】:

我目前是 Tornado 的新手,我正在尝试使用 Tornado 呈现我的 HTML 页面。我遇到的问题是让 Tornado 允许在我的 html 页面上应用 css 文件。当我在没有 Web 服务器的情况下单独运行 html 时,会自动合并和应用 css 文件。使用 Tornado,html 内容没问题,但是 css 根本拒绝申请。

我尝试通过 href 和 tornado 使用我的两个文件的完整路径,也尝试将它们放在运行 tornado 的 .py 脚本之外,但我得到了相同的错误

Python Tornado 代码

import tornado.web
import tornado.ioloop

port = 8080

class basicRequestHandler(tornado.web.RequestHandler):
    def get(self):
        self.write("Hello world!")

class staticRequestHandler(tornado.web.RequestHandler):
    def get(self):
        self.render("C:/Users/user/Desktop/html/Project 1/index.html")


if __name__ == "__main__":
    app = tornado.web.Application([
        (r"/", basicRequestHandler),
        (r"/site", staticRequestHandler)
    ])

    app.listen(port)
    print(f"Listening on {port}")
    tornado.ioloop.IOLoop.current().start()

这是我的 html 代码中的链接。我已经尝试过完整路径和相对路径(相同的文件夹),但似乎没有任何区别

<link rel="stylesheet" href="C:\Users\user\Desktop\html\Project 
1\styles.css" type="text/css">

<link rel="stylesheet" href="styles.css" type="text/css">

我的 chrome 控制台上出现的错误是:

(1) 不允许加载本地资源:

file:///C:/Users/user/Desktop/html/Project%201/styles.css

【问题讨论】:

    标签: html css python-3.x tornado


    【解决方案1】:

    C:\Users\user\Desktop\html\Project 1\styles.css 是您系统上的文件路径。这将不起作用,因为浏览器和服务器通过 HTTP URLS 进行通信。

    要加载 CSS 文件,您需要使用其 URL。

    试试&lt;link rel="stylesheet" href="/site/styles.css"&gt;。请阅读使用StaticFileHandler 的文档以了解更多有关其用法的信息。

    【讨论】:

      猜你喜欢
      • 2020-02-01
      • 2020-09-26
      • 1970-01-01
      • 2015-11-13
      • 2017-10-08
      • 1970-01-01
      • 1970-01-01
      • 2015-11-24
      • 2021-01-17
      相关资源
      最近更新 更多