Пример #1
0
        IEnumerator GetTestPHP(string platform)
        {
            WWW www = new WWW("http://jh.fanhougame.net/getServerList.php?platform=" + platform);

            yield return(www);

            if (www.isDone)
            {
                if (!string.IsNullOrEmpty(www.error))
                {
                    MessageBox.Instance.Show(3, "", "获取服务器列表失败", "重试", () => LocalServerList());
                    yield break;
                }

                var jsonBackObj = JsonConvertor <PhpBackObj> .Json2Object(www.text);

                if (jsonBackObj != null)
                {
                    this.ShowSelectServer(jsonBackObj);
                }
                else
                {
                    MessageBox.Instance.Show(3, "", "获取服务器列表失败", "重试", () => LocalServerList());
                }
            }
        }
Пример #2
0
        private static T ReadMessage <T>(string queueAddress, ConsoleColor color = ConsoleColor.Gray) where T : UnSubscriberInfo
        {
            T result = default(T);

            using (var mq = new System.Messaging.MessageQueue(queueAddress))
            {
                ConsoleHelper.WriteLine(color, $"Waiting for new {(typeof(T) == typeof(SubscriberInfo) ? "Subscriber" : "Unsubscriber")}...");

                var message = mq.Receive();
                if (message != null)
                {
                    var msgBodyStream = new StreamReader(message.BodyStream);
                    var msgBody       = JsonConvertor.ReadObject <T>(msgBodyStream);

                    if (typeof(T) == typeof(SubscriberInfo))
                    {
                        var subscriber = (SubscriberInfo)(object)msgBody;// dirty casting
                        ConsoleHelper.WriteLine(color, "New Subscriber with below info:");
                        ConsoleHelper.WriteLine(color, $"\t\tFirstName: {subscriber.FirstName}");
                        ConsoleHelper.WriteLine(color, $"\t\tLastName: {subscriber.LastName}");
                        ConsoleHelper.WriteLine(color, $"\t\tEmailAddress: {subscriber.EmailAddress}");
                    }
                    else
                    {
                        var unsubscriber = (UnSubscriberInfo)msgBody;
                        ConsoleHelper.WriteLine(color, "New UnSubscriber with below info:");
                        ConsoleHelper.WriteLine(color, $"\t\tEmailAddress: {unsubscriber.EmailAddress}");
                    }

                    result = msgBody;
                }
            }
            return(result);
        }
Пример #3
0
        public string LogOut()
        {
            FormsAuthentication.SignOut();
            var json = new JsonConvertor();

            return(json.Convert(RedirectToAction("Index", "Home")));
        }
Пример #4
0
        /// <summary>
        /// 使用CSRedis代替StackChange.Redis
        /// <remarks>
        /// 关于CSRedis项目,请参考<seealso cref="https://github.com/2881099/csredis"/>
        /// </remarks>
        /// </summary>
        /// <param name="services"></param>
        /// <param name="redisConnectionStrings">redis连接字符串。
        /// <remarks>
        /// 如果是单机模式,请只输入一个连接字符串;如果是集群模式,请输入多个连接字符串
        /// </remarks>
        /// </param>
        /// <returns></returns>
        public static IServiceCollection UseCsRedisClient(this IServiceCollection services, params string[] redisConnectionStrings)
        {
            if (services == null)
            {
                throw new ArgumentNullException(nameof(services));
            }
            if (redisConnectionStrings == null || redisConnectionStrings.Length == 0)
            {
                throw new ArgumentNullException(nameof(redisConnectionStrings));
            }
            CSRedisClient redisClient;

            if (redisConnectionStrings.Length == 1)
            {
                //单机模式
                redisClient = new CSRedisClient(redisConnectionStrings[0]);
            }
            else
            {
                //集群模式
                redisClient = new CSRedisClient(null, redisConnectionStrings);
            }
            //初始化 RedisHelper
            RedisHelper.Initialization(redisClient, serialize: value => JsonConvertor.Serialize(value),
                                       deserialize: (data, type) => JsonConvertor.Deserialize(data, type));
            //注册mvc分布式缓存
            services.AddSingleton <IDistributedCache>(new Microsoft.Extensions.Caching.Redis.CSRedisCache(RedisHelper.Instance));
            return(services);
        }
Пример #5
0
        private void LocalServerList()
        {
            //StartCoroutine(GetTestPHP("1"));


            StringBuilder strBuilder = new StringBuilder("");

            Server[] ServerList = LocalServerListConfig.LocalServerList;
            for (int i = 0, imax = ServerList.Length; i < imax; i++)
            {
                strBuilder.Append("{\"No\":").Append(ServerList[i].No.ToString()).Append(",");
                strBuilder.Append("\"Name\":\"").Append(ServerList[i].Name).Append("\",");
                strBuilder.Append("\"Version\":").Append(1).Append(",");
                strBuilder.Append("\"IP\":\"").Append(ServerList[i].IP).Append("\",");
                strBuilder.Append("\"Port\":").Append(ServerList[i].Port.ToString()).Append(",");
                strBuilder.Append("\"ActorNumber\":").Append(ServerList[i].ActorNumber.ToString()).Append(",");
                strBuilder.Append("\"Status\":").Append(ServerList[i].Status.ToString()).Append(",");
                strBuilder.Append("\"Recommend_status\":").Append(ServerList[i].Recommend_status.ToString()).Append("}");

                if (i < imax - 1)
                {
                    strBuilder.Append(",");
                }
            }

            var testJson = "{\"ErrorCode\":\"1\",\"ErrorDesc\":\"\u6709\u6548\",\"ServerInfo\":[" + strBuilder.ToString() + "]}";

            testJson = testJson.Replace("\"", "'");
            var jsonBackObj = JsonConvertor <PhpBackObj> .Json2Object(testJson);

            this.ShowSelectServer(jsonBackObj);
        }
Пример #6
0
        private void PhpServerCallback(string backJson)
        {
            backJson = backJson.Replace("\"", "'");
            var jsonBackObj = JsonConvertor <PhpBackObj> .Json2Object(backJson);

            TraceUtil.Log("BackJson:" + backJson);
            ShowSelectServer(jsonBackObj);
        }
        public bool Execute(string[] args, string results)
        {
            List <LogData> data = JsonConvertor.ConvertToLogDataList(results);

            this.model.logs = data;

            return(true);
        }
Пример #8
0
        public static T Get <T>(string key)
        {
            var value = Get(key);

            if (!string.IsNullOrEmpty(value))
            {
                return(JsonConvertor.Deserialize <T>(value));
            }
            return(default(T));
        }
Пример #9
0
        public string Get()
        {
            var result  = new GetAllHomesViewModel();
            var getHome = _animalManager.GetAllHomes();

            result.Homes = _mapper.Map <List <HomeViewModel> >(getHome);

            var json = new JsonConvertor();

            return(json.Convert(result.Homes));
        }
Пример #10
0
        public static async Task <T> GetAsync <T>(string key)
        {
            var value = await GetAsync(key);

            if (!string.IsNullOrEmpty(value))
            {
                return(JsonConvertor.Deserialize <T>(value));
            }

            return(default(T));
        }
        public string GetAllAnimalsJson()
        {
            var result     = new GetAllAnimalsViewModel();
            var getAnimals = _animalManager.GetAllAnimals();

            result.Animals = _mapper.Map <List <AnimalViewModel> >(getAnimals);

            var json = new JsonConvertor();

            return(json.Convert(result.Animals));
        }
Пример #12
0
        public bool Execute(string[] args, string results)
        {
            ConfigFileData data = JsonConvertor.ConvertToConfigFileData(results);

            model.InputDirs    = data.InputDirs;
            model.LogName      = data.LogName;
            model.OutputDir    = data.OutputDir;
            model.SourceDir    = data.SourceDir;
            model.ThumnailSize = data.ThumnailSize;

            return(true);
        }
Пример #13
0
        public void TestCsRedisClient()
        {
            BuildServiceForSqlServer();
            var dbContext = AspectCoreContainer.Resolve <IDbContextCore>();

            RedisHelper.Set("test_cache_key", JsonConvertor.Serialize(dbContext.GetCurrentDatabaseTableList()),
                            10 * 60);
            Thread.Sleep(2000);
            var content = DistributedCacheManager.Get("test_cache_key");

            Assert.IsNotNull(content);
        }
Пример #14
0
    public IEnumerator RequestPropagandaList(ButtonCallBack callBack)
    {
        WWW www = new WWW("http://jh.fanhougame.net/gm/?from=front&service=GameManagerService&action=getAutoTalkInfo");

        yield return(www);

        if (www.isDone && string.IsNullOrEmpty(www.error))
        {
            PhpAutoPropaganda phpPropaganda = JsonConvertor <PhpAutoPropaganda> .Json2Object(www.text);

            callBack(phpPropaganda);
        }
    }
Пример #15
0
        public string Stringify()
        {
            StringBuilder sb = new StringBuilder();

            sb.Append("{\"Type\":\"" + Type + "\",");
            sb.Append("\"Message\":");
            if (Message is IJson)
            {
                sb.Append(((IJson)Message).Stringify() + "}");
                return(sb.ToString());
            }
            sb.Append(JsonConvertor.ToJSON(Message) + "}");
            return(sb.ToString());
        }
Пример #16
0
    /// <summary>
    /// PhpService CallBack Handler. 目前暂不调用,Php服务器目前仅返回服务器IP列表,没有做平台验证。
    /// 需要修改服务器Json串请请看LoginUIPanel。
    /// </summary>
    /// <param name="backJson"></param>
    public void PhpServerCallback(string backJson)
    {
        var testJson    = "{\"ErrorCode\":\"1\",\"ErrorDesc\":\"\u6709\u6548\",\"ServerInfo\":[{\"No\":1,\"Name\":\"112.124.54.108\",\"IP\":\"112.124.54.108\",\"Port\":8000,\"ActorNumber\":3,\"Status\":1},{\"No\":2,\"Name\":\"192.168.0.190\",\"IP\":\"192.168.0.190\",\"Port\":8000,\"ActorNumber\":150,\"Status\":2},{\"No\":3,\"Name\":\"192.168.2.91\",\"IP\":\"192.168.2.91\",\"Port\":8000,\"ActorNumber\":150,\"Status\":3},{\"No\":4,\"Name\":\"192.168.0.40\",\"IP\":\"192.168.0.40\",\"Port\":8000,\"ActorNumber\":150,\"Status\":1},{\"No\":5,\"Name\":\"192.168.3.21\",\"IP\":\"192.168.3.21\",\"Port\":8000,\"ActorNumber\":150,\"Status\":0},{\"No\":6,\"Name\":\"192.168.1.67\",\"IP\":\"192.168.1.67\",\"Port\":8000,\"ActorNumber\":150,\"Status\":0},{\"No\":7,\"Name\":\"127.0.0.1\",\"IP\":\"127.0.0.1\",\"Port\":8000,\"ActorNumber\":3,\"Status\":1},{\"No\":8,\"Name\":\"192.168.2.62\",\"IP\":\"192.168.2.62\",\"Port\":8000,\"ActorNumber\":3,\"Status\":1}]}";
        var jsonBackObj = JsonConvertor <PhpBackObj> .Json2Object(testJson);

        if (OnLoginComplete != null)
        {
            OnLoginComplete(jsonBackObj);
        }
        else
        {
            TraceUtil.Log("没有监听Php服务返回事件");
        }
    }
Пример #17
0
    IEnumerator PurchaseThroughPHP()
    {
        StringBuilder sb = new StringBuilder(payUrl);

        //sb.Append("?servIp=").Append(LoginManager.Instance.LoginSSActorInfo.SZServerIP);
        //sb.Append("&servPort=").Append(LoginManager.Instance.LoginSSActorInfo.wPort.ToString());
        sb.Append("?actorId=").Append(LoginManager.Instance.LoginSSActorInfo.lActorID.ToString());
        sb.Append("&gameWorldId=").Append(JHPlatformConnManager.Instance.GameWorldId.ToString());
        sb.Append("&platformMoneyNum=").Append(CurrencyNum.ToString());
        sb.Append("&payNum=").Append(GoldNum.ToString());
        sb.Append("&openid=").Append(PlayerInfo["openid"]);
        sb.Append("&openkey=").Append(PlayerInfo["accessToken"]);
        sb.Append("&pay_token=").Append(PlayerInfo["payToken"]);
        sb.Append("&pf=").Append(PlayerInfo["pf"]);
        sb.Append("&pfkey=").Append(PlayerInfo["pfkey"]);
        sb.Append("&zoneid=1");
        sb.Append("&mediaType=1");             //1:QQ 2: WX(微信)

        string wholeUrl = sb.ToString();
        string sig      = HMACSHAEncoding(wholeUrl.Substring(wholeUrl.IndexOf("/tencent")), TencentConfigData.appKey + "&");

        sb.Append("&sig=").Append(sig);

        //Debug.Log("url = "  + sb.ToString());

        WWW www = new WWW(sb.ToString());

        LoadingUI.Instance.Show();
        yield return(www);

        LoadingUI.Instance.Close();
        if (www.isDone)
        {
            if (!string.IsNullOrEmpty(www.error))
            {
                TraceUtil.Log("网络错误。。。。");
                OnPurchaseResult(null);
                yield break;
            }
        }

        //Debug.Log("//////////////////payment msg = " + www.text);
        var purchaseInfo = JsonConvertor <PurchaseInfo> .Json2Object(www.text);

        if (purchaseInfo != null)
        {
            OnPurchaseResult(purchaseInfo);
        }
    }
Пример #18
0
        //returns a json object of all logs
        public string Execute(string[] args, out bool result)
        {
            List <LogInfo> list = this.ils.GetMessages();
            List <LogData> lds  = new List <LogData>(); //for comunication

            foreach (LogInfo info in list)
            {
                LogData data = new LogData();
                data.Message = info.Message;
                data.Type    = info.Type;
                lds.Add(data);
            }
            result = true;
            return(JsonConvertor.ConvertToJson(lds));
        }
Пример #19
0
    private IEnumerator AuthorPHP()
    {
        WWW www = new WWW(string.Format(m_UCConfigData.PhpLoginAuthorURL, m_sid));

        yield return(www);

        if (www.isDone)
        {
            if (OnRequestPHPBackResult != null)
            {
                var jsonBackObj = JsonConvertor <PhpBackObj> .Json2Object(www.text.Replace("\"", "'"));

                OnRequestPHPBackResult(jsonBackObj);
            }
        }
    }
Пример #20
0
 public bool Execute(string[] args, string results)
 {
     try
     {
         List <LogData> logs = JsonConvertor.ConvertToLogDataList(results);
         foreach (LogData log in logs)
         {
             this.logModel.Logs.Add(new LogLine((MessageTypeEnum)log.Type, log.Message));
         }
         return(true);
     }
     catch (Exception e)
     {
         return(false);
     }
 }
Пример #21
0
    private IEnumerator AuthorPHP()
    {
        WWW www = new WWW("http://jh.fanhougame.net/xiaomi/loginCheck.php");

        yield return(www);

        if (www.isDone)
        {
            if (OnRequestPHPBackResult != null)
            {
                var jsonBackObj = JsonConvertor <PhpBackObj> .Json2Object(www.text.Replace("\"", "'"));

                PlatformLoginBehaviour.message += "jsonBackObj:: " + jsonBackObj;
                OnRequestPHPBackResult(jsonBackObj);
            }
        }
    }
Пример #22
0
    private IEnumerator AuthorPHP()
    {
        WWW www = new WWW(serverListUrl);

        yield return(www);

        if (www.isDone)
        {
            if (!string.IsNullOrEmpty(www.error))
            {
                TraceUtil.Log("www error = " + www.error);
                if (OnRequestPHPResult != null)
                {
                    OnRequestPHPResult(null);
                }
                yield break;
            }
            //m_message="Statue:"+www.error;
            //m_message+=www.text;
            //Debug.Log("Serverinfo = " + www.text);
            if (OnRequestPHPResult != null)
            {
                //Debug.Log("OnRequestPHPResult not null");
                PlatformLoginBehaviour.message = "PHP BackInfo:" + www.text.Replace("\"", "'");

                var jsonBackObj = JsonConvertor <PhpBackObj> .Json2Object(www.text.Replace("\"", "'"));

                if (jsonBackObj != null)
                {
                    PlatformLoginBehaviour.message += jsonBackObj.ServerInfo.Length;
                    //Debug.Log("json convert right .........");
                    OnRequestPHPResult(jsonBackObj);
                }
                //else
                //{
                //Debug.Log("json convert wrong.....");
                //Debug.Log("show again = " + www.text);
                //}
            }
            //else
            //{
            //	Debug.Log("OnRequestPHPResult is null");
            //}
        }
    }
Пример #23
0
    IEnumerator CheckBalance()
    {
        StringBuilder sb = new StringBuilder(balanceUrl);

        sb.Append("?openid=").Append(PlayerInfo["openid"]);
        sb.Append("&openkey=").Append(PlayerInfo["accessToken"]);
        sb.Append("&pay_token=").Append(PlayerInfo["payToken"]);
        sb.Append("&pf=").Append(PlayerInfo["pf"]);
        sb.Append("&pfkey=").Append(PlayerInfo["pfkey"]);
        sb.Append("&zoneid=1");
        sb.Append("&mediaType=1");             //1:QQ 2: WX(微信)

        string wholeUrl = sb.ToString();
        string sig      = HMACSHAEncoding(wholeUrl.Substring(wholeUrl.IndexOf("/tencent")), TencentConfigData.appKey + "&");

        sb.Append("&sig=").Append(sig);

        //Debug.Log("url = "  + sb.ToString());

        WWW www = new WWW(sb.ToString());

        yield return(www);

        if (www.isDone)
        {
            if (!string.IsNullOrEmpty(www.error))
            {
                TraceUtil.Log("网络错误。。。。");
                if (OnBalanceResult != null)
                {
                    OnBalanceResult(null);
                }
                yield break;
            }
        }

        //Debug.Log("//////////////////payment msg = " + www.text);
        var purchaseInfo = JsonConvertor <PurchaseInfo> .Json2Object(www.text);

        //Debug.Log("msg = " + purchaseInfo.balance);
        if (purchaseInfo != null && OnBalanceResult != null)
        {
            OnBalanceResult(purchaseInfo);
        }
    }
Пример #24
0
 public bool SendMessage <T>(T msgBody)
 {
     try
     {
         using (var queue = new Msmq.MessageQueue(QueuePath))
         {
             var message = new Msmq.Message();
             var obj     = JsonConvertor.SerializeObject(msgBody);               // we use json for more optimized queue size, default is xml
             message.BodyStream = new MemoryStream(Encoding.UTF8.GetBytes(obj)); // convert json to array of bytes & put it into memorystream for using in queue
             queue.Send(message);
             return(true);
         }
     }
     catch (Exception ex)
     {
         LogManager.Error(ex);
     }
     return(false); // if it fails in any reason, the result is false
 }
Пример #25
0
    private IEnumerator AuthorPHP(string tokenKey, string tokenSecret)
    {
        WWW www = new WWW("http://jh.fanhougame.net/oppo/demo.php?tokenSecret=" + tokenSecret + "&token=" + tokenKey);

        yield return(www);

        if (www.isDone)
        {
            //m_message="Statue:"+www.error;
            //m_message+=www.text;
            if (OnRequestPHPResult != null)
            {
                PlatformLoginBehaviour.message = "PHP BackInfo:" + www.text.Replace("\"", "'");
                var jsonBackObj = JsonConvertor <PhpBackObj> .Json2Object(www.text.Replace("\"", "'"));

                PlatformLoginBehaviour.message += jsonBackObj.ServerInfo.Length;
                OnRequestPHPResult(jsonBackObj);
            }
        }
    }
Пример #26
0
        public string Execute(string[] args, out bool result)
        {
            ConfigFileData cfd = new ConfigFileData();

            try
            {
                cfd.OutputDir    = ReadAppConfig.ReadSetting("OutPutDir");
                cfd.SourceDir    = ReadAppConfig.readAppSettings("ImageServiceSource");
                cfd.LogName      = ReadAppConfig.readAppSettings("ImageServiceLog");
                cfd.ThumnailSize = ReadAppConfig.ReadThumbnailSize("ThumbnailSize");
                cfd.InputDirs    = ReadAppConfig.ReadSetting("Handlers").Split(';');
                result           = true;
                return(JsonConvertor.ConvertToJson(cfd));
            }
            catch
            {
                result = false;
                return("problem occured");
            }
        }
Пример #27
0
 /// <summary>
 /// executes the command
 /// <param name= args> command's args </param>
 /// <param name= results> a string containing the necessary info
 /// from the appconfig</param>
 /// <return> true if successful, false for exception
 /// </summary>
 public bool Execute(string[] args, string results)
 {
     try
     {
         //gets the appsettings in order to update the values of the gui view
         ConfigFileData settings = JsonConvertor.ConvertToConfigFileData(results);
         this.model.OutputDirectory   = settings.OutputDir;
         this.model.ServiceLogName    = settings.LogName;
         this.model.ServiceSourceName = settings.SourceDir;
         this.model.ThumbSize         = settings.ThumnailSize.ToString();
         foreach (string handler in settings.InputDirs)
         {
             this.model.DirectoriesCollection.Add(handler);
         }
         return(true);
     }
     catch (Exception e)
     {
         return(false);
     }
 }
Пример #28
0
 private void BroadCast(IClient client, Packet packet)
 {
     byte[] buffer;
     try
     {
         buffer = Encoding.UTF8.GetBytes(JsonConvertor.ToJSON(packet));
         if (buffer == null || buffer.Length == 0)
         {
             return;
         }
     }
     catch (Exception ex)
     {
         DebugLogger.AddLog("Exception:" + ex);
         return;
     }
     foreach (IClient c in Clients)
     {
         if (c != client && c.IsConnected)
         {
             c.Write(buffer);
         }
     }
 }
Пример #29
0
 public static async Task <bool> SetAsync(string key, object data, int expiredSeconds)
 {
     return(await RedisHelper.SetAsync(key, JsonConvertor.Serialize(data), expiredSeconds));
 }
Пример #30
0
 public static void Set(string key, object data, int expiredSeconds)
 {
     RedisHelper.Set(key, JsonConvertor.Serialize(data), expiredSeconds);
 }