mirror of
https://github.com/duanhf2012/origin.git
synced 2026-02-04 06:54:45 +08:00
提交httpservice与example示例
This commit is contained in:
@@ -13,15 +13,30 @@ import (
|
||||
type GateService struct {
|
||||
service.Service
|
||||
processor network.Processor
|
||||
httpRouter sysservice.IHttpRouter
|
||||
}
|
||||
|
||||
func (slf *GateService) OnInit() error{
|
||||
tcpervice := node.GetService("TcpService").(*sysservice.TcpService)
|
||||
slf.processor = &processor.PBProcessor{}
|
||||
tcpervice.SetProcessor(slf.processor)
|
||||
|
||||
httpervice := node.GetService("HttpService").(*sysservice.HttpService)
|
||||
slf.httpRouter = sysservice.NewHttpHttpRouter(slf)
|
||||
httpervice.SetHttpRouter(slf.httpRouter)
|
||||
|
||||
slf.httpRouter.RegRouter(sysservice.METHOD_GET,"/get/query",slf.HttpTest)
|
||||
slf.httpRouter.SetServeFile(sysservice.METHOD_GET,"/img/head/","d:/img")
|
||||
return nil
|
||||
}
|
||||
|
||||
func (slf *GateService) HttpTest(session *sysservice.HttpSession) {
|
||||
session.SetHeader("a","b")
|
||||
session.Write([]byte("this is a test"))
|
||||
v,_:=session.Query("a")
|
||||
v2,_:=session.Query("b")
|
||||
fmt.Print(string(session.GetBody()),"\n",v,"\n",v2)
|
||||
}
|
||||
|
||||
func (slf *GateService) OnEventHandler(ev *event.Event) error{
|
||||
if ev.Type == event.Sys_Event_Tcp_RecvPack {
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
"ListenAddr":"127.0.0.1:8001",
|
||||
"NodeName": "Node_Test1",
|
||||
"remark":"//以_打头的,表示只在本机进程,不对整个子网开发",
|
||||
"ServiceList": ["TestService1","TestService2","TestServiceCall","GateService","TcpService"]
|
||||
"ServiceList": ["TestService1","TestService2","TestServiceCall","GateService","TcpService","HttpService"]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,6 +1,16 @@
|
||||
{
|
||||
"HttpService":{
|
||||
"Port":10001
|
||||
"HttpService":{
|
||||
"ListenAddr":"0.0.0.0:9402",
|
||||
"ReadTimeout":10000,
|
||||
"WriteTimeout":10000,
|
||||
"ProcessTimeout":10000,
|
||||
"CAFile":[
|
||||
{
|
||||
"Certfile":"",
|
||||
"Keyfile":""
|
||||
}
|
||||
]
|
||||
|
||||
},
|
||||
"TcpService":{
|
||||
"ListenAddr":"0.0.0.0:9030",
|
||||
|
||||
@@ -236,7 +236,10 @@ func main(){
|
||||
tcpService := &sysservice.TcpService{}
|
||||
gateService := &GateService.GateService{}
|
||||
tcpService.SetEventReciver(gateService)
|
||||
node.Setup(tcpService,gateService)
|
||||
|
||||
httpService := &sysservice.HttpService{}
|
||||
|
||||
node.Setup(tcpService,gateService,httpService)
|
||||
node.OpenProfilerReport(time.Second*10)
|
||||
node.Start()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user