
本文共 4755 字,大约阅读时间需要 15 分钟。
Service������������������������microSocket���������������������������
<->
���������������������microSocket���������������������������������������������������������������������������������������������������������������������������
<->
���������������
���������������������������������������Go������������������������microSocket������������������������
package mainimport ( "encoding/json" "log" "net" "msf/github.com/mistaker/microSocket")var ser *msf.Msf// ������������������������type event struct {}// ���������������������������������func (this event) OnHandel(fd uint32, conn net.Conn) bool { log.Printf("fd %d ������������", fd) return true}// ������������������������func (this event) OnClose(fd uint32) { log.Printf("fd %d ������������", fd)}// ������������������������func (this event) OnMessage(fd uint32, msg map[string]string) bool { log.Printf("���������������%v���%v", msg) // ������������������������ resData := map[string]string{ "key": msg["module"], "val": "Hello", } // ���������������������JSON stu, err := json.Marshal(resData) if err != nil { log.Printf("������������������%v", err) return false } // ���JSON������������������������ a := []byte(string(stu)) // ������������������������������ ser.SessionMaster.WriteByid(fd, a) return true}// ������������������������type Task struct {}// ������������������func (this Task) Default(fd uint32, data map[string]string) bool { log.Println("default������") return true}// ������������������func (this Task) BeforeRequest(fd uint32, data map[string]string) bool { log.Println("������������������") return true}// ������������������func (this Task) AfterRequest(fd uint32, data map[string]string) bool { log.Println("������������������") return true}// ������������������������������������func (this Task) Hello(fd uint32, data map[string]string) bool { log.Println("���������������%v���%v", data) // ������������������������������ ser.SessionMaster.WriteByid(fd, []byte("hehehehehehehehe")) return true}func (this Task) Hs(fd uint32, data map[string]string) bool { resData := map[string]string{ "key": data["module"], "val": "Hello,World!", } stu, err := json.Marshal(resData) if err != nil { log.Printf("������������������%v", err) return false } a := []byte(string(stu)) ser.SessionMaster.WriteByid(fd, a) // ��������������������� // ser.SessionMaster.DelSessionById(fd) return true}// ���������func main() { log.SetFlags(log.Lshortfile | log.LstdFlags | log.Llongfile) // ���������MSF������ var initErr error if initErr = msf.NewMsf(&msf.CommSocket{}); initErr != nil { log.Fatalf("���������MSF���������%v", initErr) } ser =&initErr // ������������������ ser.EventPool.RegisterEvent(&event{}) ser.EventPool.RegisterStructFun("ts", &Task{}) // ������������������ ser.Listening(":6565")} ## ������������������������������������������������������Php������������������������.sinux/Linux���������������microSocket������������������������```php = 3){ break; } echo("Response was:" . $buff . "\n"); echo("input what you want to say to the server:\n"); $data1 ="module:ts|method:Hs|data:333333"; $result1 ="Header".pack('N', strlen($data1)).$data1; socket_write($socket, $result1); $i++; } socket_close($socket);
PHP������������������������
���������Php���������������������������������������������������������������������������������������
1) { // ������������������������������������������ socket_close($client_socket); $client_socket = null; } continue; } switch ($last_recv_time = $time) { case '������������': // ��������������������� break; default: // ��������������������� $data = json_decode($read, true); if ($client_socket === null) { // ������������ $client_socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); socket_connect($client_socket, $host, $port) or die("������������"); } socket_write($client_socket, json_encode($data)); echo "������������ OK\n"; break; } }
���������������������������������������������������������������������������������������������������������������������
������������������������������������������������������������������������������������������������������������������������������������������������������������������fd������������������������������������������������������������������������
发表评论
最新留言
关于作者
