首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >跨源请求在使用go时被阻止

跨源请求在使用go时被阻止
EN

Stack Overflow用户
提问于 2022-05-02 12:12:03
回答 1查看 205关注 0票数 0

我正在使用JavaScript前端和后端。我使用go gin框架创建了一个API。

我的main.go是:

代码语言:javascript
复制
func main() {

  router := gin.Default()
  router.GET("/", getBasicBlogInfo)

  router.Use(cors.Default())
  err := router.Run("localhost:8080")
  if err != nil {
    log.Fatalln("Unable to run the server.")
  }

}

现在在我的index.js

代码语言:javascript
复制
fetch('localhost:8080')
.then(response => response.json())
.then(data => console.log(data))
.catch((error) => {
    console.error('Error:', error);
});

然而,我得到一个CORS-起源请求块错误。

我得到的错误是:

代码语言:javascript
复制
Error: TypeError: NetworkError when attempting to fetch resource.

CORS之一是:

跨源请求被阻止:相同的原产地策略不允许在http://localhost:8080/上读取远程资源。(原因: CORS标题“访问-控制-允许-起源”丢失)。状态代码: 200.

EN

回答 1

Stack Overflow用户

发布于 2022-05-02 12:29:17

代码语言:javascript
复制
import "github.com/gin-contrib/cors"

// r.Use(AllowAll())
func AllowAll() gin.HandlerFunc{
    cfg := cors.Config{
        AllowMethods:     []string{"*"},
        AllowHeaders:     []string{"*"},
        AllowCredentials: true,
        MaxAge:           12 * time.Hour,
    }

    cfg.AllowAllOrigins = true
    return cors.New(cfg)
}
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72086521

复制
相关文章

相似问题

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