我正试图在我的Go web服务器中设置一个标题.我用的是gorilla/muxnet/http个软件包.

我想设置Access-Control-Allow-Origin: *以允许跨域AJAX.

这是我的密码:

func saveHandler(w http.ResponseWriter, r *http.Request) {
// do some stuff with the request data
}

func main() {
    r := mux.NewRouter()
    r.HandleFunc("/save", saveHandler)
    http.Handle("/", r)
    http.ListenAndServe(":"+port, nil)
}

net/http包有文档描述发送http请求头,就好像它是客户端一样--我不太确定如何设置响应头?

推荐答案

不要紧,我想出来了--我在Header()上用了Set()的方法(哎呀!)

我的处理器现在看起来像这样:

func saveHandler(w http.ResponseWriter, r *http.Request) {
    // allow cross domain AJAX requests
    w.Header().Set("Access-Control-Allow-Origin", "*")
}

也许这会在某一天帮助像我这样被剥夺咖啡因的人:)

Go相关问答推荐

如何在另一个文件夹中使用Delve运行二进制文件?

AWS S3 SelectObjectContent在AWS SDK v2 for Go中不返回结果

GORM Find(&;Room)操作使用空数据而不是实际数据填充 struct

减少在围棋中映射DTO时的重复代码量

JetBrains Goland,禁用突出显示测试文件

Golang Fiber Render - 将数据发送到多个布局

使用Cookie身份验证的Gorilla Golang Websocket优化

由于 main.go 文件中的本地包导入导致构建 docker 容器时出错

如何以干净的方式在中间件中注入 repo 或服务?

Go 的垃圾收集器在使用时删除 ZeroMQ 套接字

如何在 golang 中同时加载 .env 文件和 os 环境变量

Golang 工作池实现意外工作

无限期运行 Go routine (完成后重新启动)

将未知长度切片的值分配给Go中的 struct ?

通用函数与外部包中的常见成员一起处理不同的 struct ?

什么是无效字符实体 &ccb

Go模板中的浮点除法

为什么 template.ParseFiles() 没有检测到这个错误?

Go 泛型是否与 LINQ to Objects 等效?

如何发送带有登录数据的 GET 请求并将 cookie 数据保存到 txt 文件?