1 Star 0 Fork 0

煮诗炖笔/ytc

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
lai123.go 1.15 KB
一键复制 编辑 原始数据 按行查看 历史
煮诗炖笔 提交于 2021-04-16 18:06 . update
package main
import (
"log"
"net/http"
"toDoList/handler"
db "toDoList/models"
_ "github.com/go-sql-driver/mysql"
)
// 拦截器
// cors 跨域
func handleIterceptor(h http.HandlerFunc) http.HandlerFunc {
return func(w http.ResponseWriter, r *http.Request) {
// 允许访问资源服务
w.Header().Set("Access-Control-Allow-Origin", "*")
// 允许跨域传递http头部
w.Header().Add("Access-Control-Allow-Headers", "Content-Type")
// 返回数据类型
w.Header().Set("content-type", "application/json")
// 添加允许请求方法
w.Header().Add("Access-Control-Allow-Methods", "GET,POST,OPTIONS,PUT,DELETE")
// TODO 异常处理拦截器
// TODO 日志记录拦截器
// TODO 有没有更优雅的方式?
h(w, r)
}
}
func main() {
//数据库初始化
db.InitDB()
//路由注册
http.HandleFunc("/create", handleIterceptor(handler.CreateHandler))
http.HandleFunc("/put", handleIterceptor(handler.PutHandler))
http.HandleFunc("/delete", handleIterceptor(handler.DeleteHandler))
http.HandleFunc("/list", handleIterceptor(handler.ListHandler))
//启动服务,在9090端口监听
log.Fatal(http.ListenAndServe(":9090", nil))
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/ytc66/ytc.git
[email protected]:ytc66/ytc.git
ytc66
ytc
ytc
master

搜索帮助