国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

原標(biāo)題:Heroku mysql 連線錯誤是什麼原因造成的? (嘗試將前端連接到後端 POST 請求)識別前端連接到後端時 Heroku mysql 連接錯誤的來源
P粉021553460
P粉021553460 2023-12-13 12:40:42
0
1
887

{已解決}。新錯誤

Heroku 日誌錯誤:

Error: connect ECONNREFUSED 127.0.0.1:3306
2021-09-23T18:24:12.236657+00:00 app[web.1]: at TCPConnectWrap.afterConnect.          [as        oncomplete] (node:net:1146:16) {
2021-09-23T18:24:12.236658+00:00 app[web.1]: errno: -111,
2021-09-23T18:24:12.236658+00:00 app[web.1]: code: 'ECONNREFUSED',
2021-09-23T18:24:12.236658+00:00 app[web.1]: syscall: 'connect',
2021-09-23T18:24:12.236659+00:00 app[web.1]: address: '127.0.0.1',
2021-09-23T18:24:12.236659+00:00 app[web.1]: port: 3306,
2021-09-23T18:24:12.236659+00:00 app[web.1]: fatal: true

訊息/背景:

React js 前端(現(xiàn)在託管在 Netlifty 上) 使用 Express 和 MYSQL2 的 Javascript Node 後端(託管在 Heroku 上)

目標(biāo): 將 Neflifty 前端 POST 請求與 Heroku 後端連接,取得 POST 負(fù)載資料並將其插入 MYSQL 表中。

更新:2021 年 9 月 24 日

我已經(jīng)完成了所有建議的事情。我已經(jīng)使用clearDB 建立了一個新資料庫。新增它並在 mysql Workbench 中測試連接。建立了所需的表。更新了用於建立與新資料庫的連接的後端程式碼。檢查 Heroko 變數(shù)並確保它們正確反映到新資料庫中?,F(xiàn)在有一個授權(quán)問題。 {已解決}

經(jīng)過修正的新後端程式碼:


#
const express = require('express');

const app = express();

const port = process.env.Port || 8000

app.list en(port);
console.log(`server is listing on ${port}`);
超時


問題: 如果這在工作臺上本地連接,如果將它們添加為變量,為什麼 Heroku 不會連接? {已回答}

新問題: 為什麼它應(yīng)該使用環(huán)境時卻嘗試使用連接埠 8000?為什麼會超時?

對此的任何幫助將不勝感激。

P粉021553460
P粉021553460

全部回覆(1)
P粉610028841

您無法連線到資料庫,因?yàn)?Heroku 上沒有執(zhí)行任何資料庫執(zhí)行個體。一旦您使用 Heroku CLI 推送程式碼,Heroku 就會為您設(shè)定一個 NodeJS 應(yīng)用程序,但這並不意味著它也會為您設(shè)定資料庫。

您可以透過 Heroku 的介面或 CLI 將資料庫新增至您的應(yīng)用程式。從 CLI(我們將設(shè)定 ClearDB,但任何 MySQL 資料庫外掛程式都可以工作):

heroku addons:create cleardb:ignite

完成之後,您想要新的資料庫 URL(不是 localhost):

heroku config | grep CLEARDB_DATABASE_URL

最後一個指令的輸出將類似於:

mysql://:@/?reconnect=true

現(xiàn)在,有了這個,您應(yīng)該使用新資訊稍微修改您的程式碼。您不想在版本控制中公開資料庫憑證,因此您可以使用環(huán)境變數(shù)來完成它:

const db =  mysql.createConnection({
    connectionaLimit: 50,
    user: process.env.DB_USER,
    host: process.env.DB_HOST,
    password: process.env.DB_PASSWORD,
    database: process.env.DATABASE,
    port: 3306
});

此外,您需要為正在運(yùn)行的 Heroku 應(yīng)用程式設(shè)定環(huán)境變數(shù):

heroku config:set DB_USER=
heroku config:set DB_PASSWORD=
heroku config:set DB_HOST=
heroku config:set DATABASE=

現(xiàn)在,您有一個在 Heroku 上運(yùn)行的資料庫實(shí)例和一個可以連接到該資料庫的 NodeJS 應(yīng)用程式實(shí)例。

要進(jìn)一步閱讀,您可能想查看這些連結(jié):

https:// /lo-victoria.com/build-a-mysql-nodejs-crud-app-4-deploying-to-heroku-finale

#https://www.bezkoder.com/部署節(jié)點(diǎn)-js-app-heroku-cleardb-mysql/

#https://raddy.co.uk/blog/how-to-deploy-node-js-express-ejs-mysql-website-on-heroku-cleardb/(這個使用Heroku 的介面)

最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板