Python Heroku在同一回购协议中部署React Flask应用程序

Python Heroku在同一回购协议中部署React Flask应用程序,python,reactjs,flask,heroku,heroku-cli,Python,Reactjs,Flask,Heroku,Heroku Cli,我正在将flask react应用程序部署到Heroku。它都位于同一个文件夹中。我的app.py代码在这里 import time from flask import Flask, send_from_directory from flask_cors import CORS app = Flask(__name__, static_folder='build/', template_folder="build", static_url_path='/') CORS(

我正在将flask react应用程序部署到Heroku。它都位于同一个文件夹中。我的app.py代码在这里

import time
from flask import Flask, send_from_directory
from flask_cors import CORS


app = Flask(__name__, static_folder='build/', template_folder="build", static_url_path='/')

CORS(app)

@app.route('/', defaults={'path': ''})
@app.route('/<path:path>')
def serve(path):
    if path != "" and os.path.exists(app.static_folder + '/' + path):
        return send_from_directory(app.static_folder, path)
    else:
        return send_from_directory(app.static_folder, 'index.html')

if __name__ == "__main__":
    app.run()
导入时间
从flask导入flask,从\u目录发送\u
从LASKU cors进口cors
app=Flask(uuu name,static_ufolder='build/',template_ufolder='build',static_uurl\u path='/'))
CORS(应用程序)
@app.route('/',默认值={'path':''})
@应用程序路径(“/”)
def serve(路径):
如果路径!=“”和os.path.exists(app.static_folder+'/'+path):
从目录返回发送目录(app.static文件夹,路径)
其他:
从目录返回发送目录(app.static文件夹'index.html')
如果名称=“\uuuuu main\uuuuuuuu”:
app.run()
以下是我的文件夹结构的图像:


我在Heroku上部署了它,但发现404错误。虽然代码在localhost上运行良好,但我已经尝试了所有我能做的事情。我的其他发送数据的API似乎工作正常。这只是这个问题。

git忽略了
build/
目录,因此不会出现在您推送到Heroku的代码中。在Python buildpack为Flask应用程序提供服务之前,您是否已将JavaScript buildpack配置为构建React应用程序?请参见示例-您应该看到类似
1的内容。heroku/nodejs 2。heroku/python
。哦,是的!在Python构建之前,我没有构建react项目。你的解决方案很有魅力。非常感谢@jornsharpe