コード例 #1
0
        private void OnMessageReceived(int id, object sender, Websockets.Net.MessageEventArgs args)
        {
            var message = default(string);

            if (args.IsText)
            {
                message = args.Data;
            }
            else
            {
                byte[] byteArray = Encoding.ASCII.GetBytes(args.Data);
                message = Convert.ToBase64String(byteArray);
            }
            SendEvent("websocketMessage", new JObject
            {
                { "id", id },
                { "data", message },
                { "type", args.IsText ? "text":"binary" },
            });
        }
        private void OnMessageReceived(object sender, Websockets.Net.MessageEventArgs args)
        {
            var response = args;

            var json = JObject.Parse(response.Data);

            if (json != null)
            {
                if (json.ContainsKey("replyID"))
                {
                    var replyId  = json.Value <int>("replyID");
                    var callback = default(TaskCompletionSource <JToken>);
                    if (_callbacks.TryGetValue(replyId, out callback))
                    {
                        var result = default(JToken);
                        if (json.TryGetValue("result", out result))
                        {
                            if (result.Type == JTokenType.String)
                            {
                                callback.TrySetResult(JToken.Parse(result.Value <string>()));
                            }
                            else
                            {
                                callback.TrySetResult(result);
                            }
                        }
                        else
                        {
                            callback.TrySetResult(null);
                        }
                    }
                }
            }
            else
            {
                RNTracer.Write(ReactConstants.Tag, "Fatal Error in WebSocketJavaScriptExecutor OnMessageReceived, json is null");
            }
        }