您的位置:首页 > 移动开发 > Unity3D

项目记录03--客unity,服erlang--框架net

2015-11-09 15:35 483 查看
%% 写入字符串

write_string(Bin,Str)->

L = byte_size(list_to_binary(Str)), %% 数据长度

<<Bin/binary,L:16,Str/binary>>.

错误写法,认为Str/binary会自动转换

改:

write_string(Bin,Str)->

StrBin = list_to_binary(Str),

L = byte_size(StrBin), %% 数据长度

<<Bin/binary,L:16,StrBin/binary>>.

客户端错误:

ArgumentOutOfRangeException: ArgRange_Array

Parameter name: count

查看代码发现在string value = Encoding.UTF8.GetString(mDataBuff, mPosition, count);报错。顿时明白编码问题,首先想到就是大小端问题,客户端有检查大小端,再回看服务端<<Bin/binary,L:16,StrBin/binary>>.这句L:16没有做转小端。L:16/little.

客户端:

1.成功解析基本的服务端发送的数据。

服务端:

1.在协议公共类pt里面添加读取object,byte,short,int,long功能

下步:

整理代码,重构。。。。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: