laruence / yar

Light, concurrent RPC framework for PHP & C
Other
1.43k stars 319 forks source link

关于Yar的数据包的问题 #121

Open Y2Nk4 opened 6 years ago

Y2Nk4 commented 6 years ago

我打算研究弄一个其他语言的服务端用于远程调用,但是在开发的时候发现,拦截到的Yar数据包的包头里有一大截是空的。 但是header之后的packager_name和body又能正确获取 tim 20180426225904

Y2Nk4 commented 6 years ago

Yar_Version: 2.0.4

Y2Nk4 commented 6 years ago

用Yar_Client发出的请求 <?php $client = new Yar_Client("http://192.168.1.3:8001/Yar"); //$client = new Yar_Client("http://192.168.1.16/Yar/server.php"); $client->SetOpt(YAR_OPT_HEADER, array("version: 1")); //Custom headers, Since 2.0.4 $result = $client->some_method("parameter"); var_dump($result);

hanskorg commented 6 years ago

看起来没有问题啊,看一下readme 协议header部分除最后一个int其他部分可空

Y2Nk4 commented 6 years ago

之后再折腾了一下就好了,一大截头内容确实是空的,然后还有个问题就是用nodejs的buffer把最后一个转为数字的时候一直乱码233,还在研究233

hanskorg commented 6 years ago

字节序,长度,你看一下packager.c,body_len使用uint