1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- package http
- import (
- "net/http"
- "go-common/app/job/openplatform/article/conf"
- "go-common/app/job/openplatform/article/service"
- "go-common/library/log"
- bm "go-common/library/net/http/blademaster"
- )
- var ajSrv *service.Service
- // Init .
- func Init(conf *conf.Config, srv *service.Service) {
- ajSrv = srv
- // init outer router
- engineOuter := bm.DefaultServer(conf.BM)
- outerRouter(engineOuter)
- if err := engineOuter.Start(); err != nil {
- log.Error("xhttp.Serve error(%v)", err)
- panic(err)
- }
- }
- // outerRouter init outer router
- func outerRouter(r *bm.Engine) {
- r.Ping(ping)
- r.Register(register)
- cr := r.Group("/sitemap")
- {
- cr.GET("/read/detail.xml", sitemap)
- }
- }
- func ping(c *bm.Context) {
- if err := ajSrv.Ping(c); err != nil {
- log.Error("ping error(%v)", err)
- c.AbortWithStatus(http.StatusServiceUnavailable)
- }
- }
- func register(c *bm.Context) {
- c.JSON(map[string]interface{}{}, nil)
- }
- func sitemap(c *bm.Context) {
- res, l := ajSrv.SitemapXML(c)
- c.Writer.Header().Set("Content-Type", "text/xml")
- c.Writer.Header().Set("Content-Length", l)
- c.Status(http.StatusOK)
- c.Writer.Write([]byte(res))
- }
|