I have a toy REST application which is structured in a following way:
- client/
- css/
- js/
- index.html
- server/
- app.py
... some other files which I use in app.py
app.py
is a flask restful endpoint which looks like this:
app = flask.Flask('some-name')
# a lot of API end points, which look in this way
@app.route('/api/something', methods=['GET'])
def func_1():
...
and now I want to serve my static index html. So after looking at this, this and this, I thought that I would be able to serve it easily by adding the following lines:
@app.route('/')
def home():
# but neither with this line
return app.send_static_file('../client/index.html')
# nor with this
return flask.render_template(flask.url_for('static', filename='../client/index.html'))
I can not see my html file (logs tell me: 127.0.0.1 - - [some day] "GET / HTTP/1.1" 404 -
). I know that I can move index.html in the server folder but is there a way to serve it from where it is right now?
P.S. when I added app._static_folder = "../client/"
and changed my home function to return app.send_static_file('index.html')
I finally started to receive my html file, but all the css/js file that are inside html are returned with 404.