首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Nuxt 3 $fetch方法不适用于golang服务器?

Nuxt 3 $fetch方法不适用于golang服务器?
EN

Stack Overflow用户
提问于 2022-07-24 12:23:25
回答 2查看 790关注 0票数 4

UPD:你可以自己检查一下:https://github.com/Rusinas/nuxt-fetch-bug

我知道这听起来很愚蠢,因为地狱和服务器语言与这些问题无关,但请听我说完。

我试图使用$fetch() (或useFetch,没有区别)从本地服务器加载数据,但我得到了以下错误:

代码语言:javascript
复制
FetchError: fetch failed ()

没有提供任何其他细节。服务器正在使用Golang/光纤运行。当我试图通过Postman加载同一个端点时,一切正常:

但是,当我试图在我的nuxt 3应用程序中加载相同的端点时:

我明白了:

但是我的golang服务器将此记录为成功:

更奇怪的是,如果我运行相同服务器的nodejs版本(或任何其他随机API),就不会出现任何错误。

我很确定我的服务器工作100%正确,但也许我丢失了一些标题或其他什么,哪个快递自动投?以下是我的响应头:

我还检查了nodejs响应头:

似乎没什么问题。

我不知道发生了什么,也不知道在nuxt服务器端检索异步数据的其他方法。我已经安装了axios,但是它会抛出随机错误,并且由于某种原因在客户端工作,这使得使用nuxt变得毫无意义。但是,axios可以调用这个端点并返回我的数据,但只能在浏览器中(尽管我在安装函数中调用它而没有任何钩子)。我现在想换个职业

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-11-29 09:56:25

问题是,fetch()由于某种原因没有重新配置localhost:9000,但当我将BASE_URL更改为127.0.0.1:9000时,它就开始工作了。

我也犯了同样的错误:FetchError: fetch failed ()

将url中的localhost更改为127.0.0.1对我很有用。

写作作为一个单独的答案,因为有些人可能找不到它的评论。

票数 1
EN

Stack Overflow用户

发布于 2022-07-25 07:57:58

首先,我认为您使用$fetch的方式是错误的,例如,我看到过Nuxt使用fetch

代码语言:javascript
复制
const data = await fetch(endpoint, {                                                                         
    method: "GET",  
    mode: "cors"       
})                  
.then(resp => resp.json())

对于服务器,只需在响应中启用CORS头,如下所示:

代码语言:javascript
复制
// you can replace the asterisk with the clients you want.
c.Append("Access-Control-Allow-Origin", "*")

希望我有所帮助:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73098374

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档