gpt4 book ai didi

python - 使用 Python Flask、AngularJS、测试/生产目录和服务请求

转载 作者:行者123 更新时间:2023-12-03 15:48:14 25 4
gpt4 key购买 nike

这是设置:

使用 ngBoilerplate (grunt, bower, angular, theworks...) 创建一个 SAP 应用程序。在我的本地主机上,它启动一个 NodeJS 服务器,以便我可以测试应用程序。这一切都很好,减去数据库/api。使用 Grunt,它将创建一个/build 文件夹(它是所有未压缩的源、 Assets ,用于调试)和一个包含生产代码的/bin 文件夹。

对于后端,我在 Heroku 上有一个 Python flask 应用程序(我将用于 REST API)。在主要的 Python 脚本中:

@app.route("/")
def index():
#index.html has the angular SAP
return make_response( open('build/index.html').read() )

我将代码推送到 Heroku,它检测到一个 Python 应用程序(我认为这很好,因为我需要 Python 来发出我的 api 请求),并且它提供正确的 index.html。我看到 Angular 向/vendor/angular.js/css/angular.css 等发出请求, 当这些文件在技术上位于/build/vendor/angular.js 中时。

我不确定我是否应该告诉 Angular 在哪里获取文件,或者它是否与 Python 相关。

我是否应该像在 LAMP 领域一样更改 DOCROOT (WWW)?
我是否更改了 Angular 中的 routeprovider/urlrouterprovider 以告诉它将文件提供到不同的位置?
或者我是否改变了我在 Python 中所做的事情?

项目目录如下所示:
hellworld.py
requirements.txt
runp-heroku.py
procfile
Gruntfile.js
build/ //test code
assets/
index.html
vendor/
bin/ //production code
assets/
index.html
vendor/
src/ //original code
assets/
index.html
vendor/

最佳答案

我从未使用过 Heroku,我通常在云中的某个地方获取 Ubuntu 服务器并手动设置生产。但主要的一点是你的生产不同于开发,你需要一个不同的生产配置。您有两个选择:

  • 配置 Flask 的 static_path
  • 或者配置 nginx 来为您从正确的目录构建的 js/css 提供服务
  • 关于python - 使用 Python Flask、AngularJS、测试/生产目录和服务请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19331975/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com