【发布时间】:2017-06-09 23:59:13
【问题描述】:
我正在 Heroku 上运行通用 Javascript 应用程序。
Express.js 正在加载我的 Vue.js 应用程序,并且请求被代理到 https://localhost:3000/api。
我正在尝试向端点发出简单的 POST 请求,但是 Chrome 上的控制台会打印出来:
OPTIONS https://localhost:3000/api net::ERR_CONNECTION_CLOSED
这是我的快递服务器:
import express from 'express'
import cors from 'cors'
import bodyParser from 'body-parser'
import path from 'path'
import mongoose from 'mongoose'
import routes from './routes'
mongoose.connect('mongodb://coolAddress');
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', () => {
console.log("mongoose connected")
})
const app = express()
const port = 3000
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(cors())
app.use(express.static(path.resolve(__dirname, '../coolClient/dist')));
app.use('/api', routes)
app.all('*', (req, res) => {
res.sendFile(path.resolve(__dirname, '../coolClient/dist', 'index.html'));
})
app.listen(process.env.PORT || port, () => {
console.log(`App listening on ${process.env.PORT || port}`)
})
我怀疑这可能与 SSL 配置有关。谷歌搜索这个问题会带来这种可能性,但并没有提供太多的调试方法。
有什么想法吗?
【问题讨论】:
-
如果您需要帮助,请显示一些代码,尤其是您的快速应用设置。
-
@Paul 好的编辑。任何想法如何解决这个问题?
-
我对你的架构还不是很清楚。你的应用是在 heroku 上,还是在 localhost 上?
-
@Paul 我的客户端应用程序和 API 服务器都托管在 Heroku 上。 API 服务器为客户端应用本身提供服务
-
并且错误是在客户端还是在服务器上?
标签: javascript express heroku vue.js