Python Tornado无法加载.Css文件

时间:2019-08-20 04:26:59

标签: html css python-3.x tornado

我目前是Tornado的新手,我正在尝试使用Tornado渲染HTML页面。我遇到的问题是龙卷风允许css文件应用于我的html页面。当我在没有Web服务器的情况下独自运行html时,css文件会自动合并并应用。使用Tornado,html内容很好,但是CSS只是拒绝应用。

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

Python龙卷风代码

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

1 个答案:

答案 0 :(得分:0)

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

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

尝试<link rel="stylesheet" href="/site/styles.css">。请阅读使用StaticFileHandler的文档以详细了解其用法。