即时通讯使用
export const getStaticProps = async () => {
export const getStaticPaths = async () => {
以及访问我的API(pages/api/proyects/),该API是在我的本地主机中使用next js创建的
const res = await fetch("http://localhost:3000/api/projects");
当我在netlify中构建应用程序时,我收到此错误连接ECONNREFUSED 127.0.0.1:3000,因此我尝试将URL仅更改为"/api/projects/"
const res = await fetch("/api/projects/");
但我得到一个新的错误"TypeError:无法解析/api/project "中的URL,因此next js需要完整的URL才能访问数据。
我在netlify中的最终URL是https://v2ds.netlify.app,所以我认为我首先需要运行我的API,但是如果要让我的API运行,我需要部署我的应用程序,我该怎么做呢?
"netlify想要这个:"
const res = await fetch("https://v2ds.netlify.app/api/projects/");
但是如果应用程序不是第一次构建,我如何访问API呢?我正在使用getStaticProps、getStaticPaths mongoose和next js的API
所以最后一个问题是我如何部署我的应用程序来netlify和访问build moment中的数据?
谢谢,希望你能帮助我
2条答案
按热度按时间kknvjkwl1#
检查您的mongod终端是否与mongosh数据库正确连接。
31moq8wy2#
你可以根据运行环境,通过分离API请求的基本URL来实现这一点。
让我们创建一个名为checkEnvironment的组件,然后只从该组件返回基本URL。
然后在getStaticProps中使用它,就像这样: