Echo Web框架

 主页   资讯   文章   代码   电子书 

CORS 示例

服务端

server.go

package main

import (
    "net/http"

    "github.com/labstack/echo"
    "github.com/labstack/echo/middleware"
)

var (
    users = []string{"Joe", "Veer", "Zion"}
)

func getUsers(c echo.Context) error {
    return c.JSON(http.StatusOK, users)
}

func main() {
    e := echo.New()
    e.Use(middleware.Logger())
    e.Use(middleware.Recover())

    // CORS default
    // Allows requests from any origin wth GET, HEAD, PUT, POST or DELETE method.
    // e.Use(middleware.CORS())

    // CORS restricted
    // Allows requests from any `https://labstack.com` or `https://labstack.net` origin
    // wth GET, PUT, POST or DELETE method.
    e.Use(middleware.CORSWithConfig(middleware.CORSConfig{
        AllowOrigins: []string{"https://labstack.com", "https://labstack.net"},
        AllowMethods: []string{echo.GET, echo.PUT, echo.POST, echo.DELETE},
    }))

    e.GET("/api/users", getUsers)

    e.Logger.Fatal(e.Start(":1323"))
}