main.go 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. package main
  2. import (
  3. "sparrow/pkg/generator"
  4. "sparrow/pkg/server"
  5. "sparrow/services/knowoapi/model"
  6. "github.com/iris-contrib/middleware/cors"
  7. "github.com/kataras/iris"
  8. )
  9. func main() {
  10. err := server.Init("knowoapi")
  11. if err != nil {
  12. server.Log.Fatal(err)
  13. return
  14. }
  15. //iris init
  16. app := iris.New()
  17. db, err := getDB()
  18. if err != nil {
  19. server.Log.Fatal(err)
  20. }
  21. models := new(model.All).Init(db)
  22. gen, err := generator.NewKeyGenerator(*confAESKey)
  23. if err != nil {
  24. server.Log.Fatal(err)
  25. }
  26. //cors
  27. opts := cors.Options{
  28. AllowedOrigins: []string{"*"},
  29. AllowedHeaders: []string{"Content-Type"},
  30. AllowedMethods: []string{"POST", "GET", "DELETE", "PUT"},
  31. ExposedHeaders: []string{"X-Header"},
  32. Debug: true,
  33. }
  34. app.Use(cors.New(opts))
  35. app.AllowMethods(iris.MethodOptions)
  36. registerErrors(app)
  37. //注册路由
  38. registerRouters(app, models, gen)
  39. app.Build()
  40. // register a http handler
  41. err = server.RegisterHTTPHandler(app)
  42. if err != nil {
  43. server.Log.Errorf("RegisterHTTPHandler Error: %s", err)
  44. return
  45. }
  46. // go
  47. err = server.Run()
  48. if err != nil {
  49. server.Log.Fatal(err)
  50. }
  51. }