как запустить flask сервер из vue -электронного приложения? ERR_CONNECTION_REFUSED при попытке сделать запрос - PullRequest
0 голосов
/ 02 апреля 2020

Я разрабатываю приложение, которое использует vue -электрон в качестве внешнего интерфейса и flask сервер в качестве внутреннего. Моя цель - запустить flask сервер при запуске приложения и начать делать несколько запросов от fron-end части к этому серверу.
Когда я запускаю flask сервер из командной строки, все в порядке, у меня есть запрос и ответ. Но когда я пытаюсь запустить flask сервер при запуске vue -электрона, у меня появляется ошибка ERR_CONNECTION_REFUSED по запросу.
вот мой основной. js

import Vue from 'vue'
import axios from 'axios'

import VModal from 'vue-js-modal'
import { LMap, LTileLayer, LMarker } from 'vue2-leaflet'
import 'leaflet/dist/leaflet.css'

import App from './App'
import router from './router'
import store from './store'

Vue.use(VModal)

if (!process.env.IS_WEB) Vue.use(require('vue-electron'))
Vue.http = Vue.prototype.$http = axios
Vue.config.productionTip = false
// here is server starting
const { exec } = require('child_process')
exec('set FLASK_APP=src\\server\\app.py && python - m flask run')

/* eslint-disable no-new */
new Vue({
  components: { App },
  router,
  store,
  template: '<App/>'
}).$mount('#app')

и app.py файл для flask сервера

from flask import Flask
from flask import request, jsonify
from flask_cors import CORS

app = Flask(__name__)
CORS(app)

test_json = {
    'is_ok': 'yeah'
}


@app.route('/request1', methods=['GET', 'POST'])
def hello():
    data = request.json
    print("request 1")
    print(data)
    return jsonify(test_json)


@app.route('/request2', methods=['GET', 'POST'])
def another_request():
    data = request.json
    print("request 2")
    print(data)
    return jsonify(test_json)

обратите внимание, что у меня python intrperter запущен как электронный подпроцесс

...