使用heroku的节点服务器中的CORS问题

x3naxklr  于 2023-08-06  发布在  其他
关注(0)|答案(1)|浏览(107)

我已经研究这个问题好几天了,我不明白为什么我在Heroku上从我的服务器应用程序请求信息时会遇到这个CORS问题。查看下面的代码以及git repo的链接。您将看到我在依赖项下的JSON文件中有CORS包。我需要更新节点或其他东西吗?这是一个dynos的问题(我几乎不知道什么是dynos,如果我需要他们为这个简单的项目)?可能是Proc文件或.env问题?我在.gitignore中有node_modules,但是Heroku会自动安装package-lock.json中的dependecies,对吗?我甚至使用了cli npm i来确定。我被困住了。任何帮助都将不胜感激:
git repo server.js:

////////////////////
// DEPENDENCIES
///////////////////
require("dotenv").config();

const express = require('express'); //server framework
const cors = require('cors'); //cross origin resource sharing to access data from foreign origins

/////////////////////
// JSON FILES
////////////////////
const projects = require("./projects.json");
const about = require("./about.json");
const tutorials = require("./tutorials.json");

// Create application object
const app = express();
const PORT = process.env.PORT || 4000;

//////////////
// MIDDLEWARE
//////////////
app.use(cors());

//////////////
// ROUTES
//////////////

//home route for api testing
app.get("/", (req, res) =>{
    res.send("Hello World")
});

//route for retrieving projectws
app.get("/projects", (req, res)=>{
    //send projects via JSON
    res.json(projects);
});

//route for retrieving about info
app.get("/about", (req, res) =>{
    //send about via JSON
    res.json(about);
});

//route for retrieving tutorial info
app.get("/tutorials", (req, res)=>{
    //send about via JSON
    res.json(tutorials);
});

/////////////
// PORT LISTENER
////////////
app.listen(PORT, () => console.log("They're listening on port", PORT));

字符串

zfciruhq

zfciruhq1#

我发现了这个问题。Heroku需要订阅其Web服务,因此服务器应用程序从未运行。我切换到render.com,它现在工作正常。

相关问题