我目前是Tornado的新手,我正在尝试使用Tornado渲染HTML页面。我遇到的问题是龙卷风允许css文件应用于我的html页面。当我在没有Web服务器的情况下独自运行html时,css文件会自动合并并应用。使用Tornado,html内容很好,但是CSS只是拒绝应用。
我尝试通过href和龙卷风使用两个文件的完整路径,也尝试将它们放置在运行龙卷风的.py脚本之外,但是我遇到了相同的错误
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
答案 0 :(得分:0)
C:\Users\user\Desktop\html\Project 1\styles.css
是系统上的文件路径。这将不起作用,因为浏览器和服务器通过HTTP URLS进行通信。
要加载CSS文件,您需要使用其URL。
尝试<link rel="stylesheet" href="/site/styles.css">
。请阅读使用StaticFileHandler
的文档以详细了解其用法。