mirror of
https://github.com/duanhf2012/origin.git
synced 2026-04-09 00:57:30 +08:00
修改http返回
This commit is contained in:
@@ -9,6 +9,8 @@ import (
|
||||
"github.com/duanhf2012/origin/node"
|
||||
"github.com/duanhf2012/origin/service"
|
||||
"github.com/duanhf2012/origin/sysservice"
|
||||
"github.com/duanhf2012/origin/util/timer"
|
||||
"net/http"
|
||||
)
|
||||
|
||||
type GateService struct {
|
||||
@@ -29,9 +31,17 @@ func (slf *GateService) OnInit() error{
|
||||
slf.httpRouter.GET("/get/query", slf.HttpTest)
|
||||
slf.httpRouter.POST("/post/query", slf.HttpTestPost)
|
||||
slf.httpRouter.SetServeFile(sysservice.METHOD_GET,"/img/head/","d:/img")
|
||||
|
||||
pCronExpr,_ := timer.NewCronExpr("0 * * * * *")
|
||||
slf.CronFunc(pCronExpr,slf.Test)
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func (slf *GateService) Test(){
|
||||
fmt.Print("xxxxx\n")
|
||||
}
|
||||
|
||||
func (slf *GateService) HttpTest(session *sysservice.HttpSession) {
|
||||
session.SetHeader("a","b")
|
||||
session.Write([]byte("this is a test"))
|
||||
@@ -57,10 +67,11 @@ func (slf *GateService) HttpTestPost(session *sysservice.HttpSession) {
|
||||
|
||||
testa.AA = 100
|
||||
testa.BB = "this is a test"
|
||||
session.WriteJson("asdasda")
|
||||
session.WriteJsonDone(http.StatusOK,"asdasda")
|
||||
}
|
||||
|
||||
func (slf *GateService) OnEventHandler(ev *event.Event) error{
|
||||
|
||||
if ev.Type == event.Sys_Event_Tcp_RecvPack {
|
||||
pPack := ev.Data.(*sysservice.TcpPack)
|
||||
slf.processor.Route(ev.Data,pPack.ClientId)
|
||||
|
||||
@@ -167,7 +167,6 @@ func (slf *HttpSession) DelHeader(key string) {
|
||||
slf.r.Header.Del(key)
|
||||
}
|
||||
|
||||
|
||||
func (slf *HttpSession) WriteStatusCode(statusCode int){
|
||||
slf.statusCode = statusCode
|
||||
}
|
||||
@@ -176,15 +175,18 @@ func (slf *HttpSession) Write(msg []byte) {
|
||||
slf.msg = msg
|
||||
}
|
||||
|
||||
func (slf *HttpSession) WriteJson(msgJson interface{}) error {
|
||||
func (slf *HttpSession) WriteJsonDone(statusCode int,msgJson interface{}) error {
|
||||
msg, err := json.Marshal(msgJson)
|
||||
if err == nil {
|
||||
slf.Write(msg)
|
||||
}
|
||||
|
||||
slf.Done()
|
||||
return err
|
||||
}
|
||||
|
||||
|
||||
|
||||
func (slf *HttpSession) flush() {
|
||||
slf.w.WriteHeader(slf.statusCode)
|
||||
if slf.msg!=nil {
|
||||
@@ -192,7 +194,7 @@ func (slf *HttpSession) flush() {
|
||||
}
|
||||
}
|
||||
|
||||
func (slf *HttpSession) done(){
|
||||
func (slf *HttpSession) Done(){
|
||||
slf.sessionDone <- slf
|
||||
}
|
||||
|
||||
@@ -259,7 +261,7 @@ func (slf *HttpRouter) Router(session *HttpSession){
|
||||
if slf.httpFiltrateList!=nil {
|
||||
for _,fun := range slf.httpFiltrateList{
|
||||
if fun(session) == false {
|
||||
session.done()
|
||||
//session.done()
|
||||
return
|
||||
}
|
||||
}
|
||||
@@ -278,7 +280,7 @@ func (slf *HttpRouter) Router(session *HttpSession){
|
||||
}
|
||||
|
||||
v.httpHandle(session)
|
||||
session.done()
|
||||
//session.done()
|
||||
return
|
||||
}
|
||||
|
||||
@@ -286,13 +288,13 @@ func (slf *HttpRouter) Router(session *HttpSession){
|
||||
idx := strings.Index(urlPath, k)
|
||||
if idx != -1 {
|
||||
session.fileData = v
|
||||
session.done()
|
||||
session.Done()
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
session.WriteStatusCode(http.StatusNotFound)
|
||||
session.done()
|
||||
session.Done()
|
||||
}
|
||||
|
||||
func (slf *HttpService) SetHttpRouter(httpRouter IHttpRouter) {
|
||||
|
||||
Reference in New Issue
Block a user