поэтому мое приложение обслуживается express локально с помощью flask API, поэтому при выполнении
node server.js
и python runner.py
будет запускаться внешний интерфейс / бэкэнд. при развертывании на heroku, кажется, что только внешний интерфейс работает без какого-либо подключения к flask API, никакие внутренние ресурсы не загружаются.
Это мой procfile с двумя dynos
web: node server.js
server: python runner.py
Я перехожу к приложению после того, как оно было развернуто, только внешний интерфейс работает.
Однако, когда я запускаю python runner.py
на своем локальном компьютере, весь контент бэкэнда в Heroku начинает работать. Я не совсем уверен, как или почему это работает, но я хочу, чтобы Heroku занялся хостингом API.
Если у кого-нибудь есть какие-либо советы или рекомендации, я бы их оценил.
Бегун. py
import os
from flask import Flask, request, jsonify, json, render_template
from flask_cors import CORS
app = Flask(__name__)
CORS(app)
# Runs the application
if __name__ == "__main__":
app.run(debug=True)
Сервер. js
const express = require('express');
const path = require('path');
const app = express();
app.use(express.static(__dirname + '/dist/client'));
app.get('/*', function(req,res) {
res.sendFile(path.join(__dirname+'/dist/client/index.html'));
});
app.listen(process.env.PORT || 8080);
Пакет. json сценарии
"scripts": {
"ng": "ng",
"start": "ng serve --proxy-config proxy.conf.json",
"build": "ng build",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e",
"heroku-postbuild": "ng build --prod"
}
Proxy.conf. json
{
"/api": {
"target": "http://localhost:5000",
"secure": false
}
}
Редактировать: возможно, обнаружена проблема - { ссылка }
Попробую и сообщу