コード例 #1
0
ファイル: WebBv.cs プロジェクト: yymqwl/Barrage
        protected override void OnMessage(MessageEventArgs e)
        {
            //Loger.Debug(ID+ $"OnMessage{e.Data.Length}:" + e.Data);
            //Loger.Debug(LZString.Decompress(e.Data));
            try
            {
                var     Json_Data = LZString.DecompressFromUint8Array(e.RawData);
                var     MsgBody   = JObject.Parse(Json_Data);
                var     id        = MsgBody.GetValue("Id").Value <ushort>();
                JObject data      = MsgBody.GetValue("Data").Value <JObject>();

                IWebSocketSession session;
                this.Sessions.TryGetSession(ID, out session);


                GameMainEntry.Instance.WebServerModule.Dispather.Dispatch(session, new MessageInfo_Json(id, data));

                /*
                 * OneThreadSynchronizationContext.Instance.Post((obj) =>
                 * {
                 *  GameMainEntry.Instance.WebServerModule.Dispather.Dispatch(session, new MessageInfo_Json(id, data));//拉到主线程处理
                 * }, null);
                 */
            }
            catch (Exception ex)
            {
                Loger.Error($"{ID} OnMessage:" + ex.ToString());
            }
            base.OnMessage(e);
        }
コード例 #2
0
        public void CompatibilityDecompressUInt8ArrayFromNode(LZStringTestCase test)
        {
            var compress   = test.CompressedUInt8Array;
            var uncompress = LZString.DecompressFromUint8Array(compress);

            Assert.That(uncompress, Is.EqualTo(test.Uncompressed));
        }