2016-11-14 57 views
-1

我想服务器与一些JavaScript的HTML页从瓶服务器径处理的HTML静态文件

Python代码:

from flask import Flask 
from flask import render_template 
app = Flask(__name__) 

@app.route("/") 
def hello(): 
    return render_template('simple.html') 

if __name__ == "__main__": 
    app.run() 

我的目录看起来是这样的:

enter image description here

我渲染的HTML文件位于模板文件中。

要加载JS文件我有<script type="text/javascript" src="../static/js/script.js"></script>

我不断收到一个错误

"browser.min.js:3 GET http://localhost:5000/script.js 404 (NOT FOUND)n.load @ browser.min.js:3s @ browser.min.js:3i @ browser.min.js:3 
browser.min.js:3 Uncaught Error: Could not load http://localhost:5000/script.js(…)s.onreadystatechange @ browser.min.js:3 

我在做什么错?

+1

建立你需要提供一个[MCVE。应该为JS提供服务的Python在哪里? – Quentin

+0

http通常运行在端口80上,而不是5000.大多数情况下,它被更改为8080.您是否明确地将其设置为在5000上运行? –

+0

nope,它只是跑在5000 –

回答

0

您需要编写相对于浏览器加载的URL的路径,而不是模板所在磁盘上的物理路径。

浏览器不知道它提供的HTML是写在templates目录中的文件中;它只是在URL后面看到HTML源代码。

通常最好总是使用绝对路径,尤其是如果您的模板可以通过多个路径的视图服务。

+0

我明白你在说什么,只是不知道该怎么做......你能举个例子吗? –