簡體   English   中英

節點JS相同的請求在localhost上有效,但在AWS EC2服務器上不起作用

[英]Node JS same request works on localhost but not on aws ec2 server

我是后端編程的新手,以用戶身份登錄時,獲取數據的GET請求遇到此問題。

我在狀態代碼為200的本地主機服務器上得到的數據很好,但是相同的GET請求不會從AWS EC2上的服務器返回數據。

我一直在尋找解決方案,但似乎我缺少了一些無法解決的關鍵信息。

本地主機開發服務器 EC2 AWS服務器

router.get('/', function (req, res) {
    if (req.session.userId) {
        return res.sendFile(path.join(__dirname + '/../public/index.html'))
    }
    return res.sendFile(path.join(__dirname + '/../public/login.html'))
})

router.get('/data', function (req, res) {
    User.findById(req.session.userId)
        .exec(function (error, user) {
            res.send(user)
        }
    );
})

只是/ data請求的行為很奇怪。

第一

您的mongoDB服務正常工作嗎?

  /etc/init.d/mongod status

要么

  service mongod status

第二

您不需要寫:

    .exec(function (error, user)

嘗試:

    User.findById(req.session.userId, function (error, user) {
        if (error) throw error
        res.send(user)
    )};

在您准備查詢時,將保留Exec。

第三

如果沒有任何結果

您的版本控制可能不好。 嘗試再次安裝mongodb / nodejs

我通過將以下行添加到我的帶有憑證的axios請求中來修復它withCredentials: true

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM