/// <summary> /// 获取user信息 UserId user_ticket jsondata.ContainsKey("user_ticket") /// </summary> /// <param name="code"></param> /// <returns>jsondata["UserId"],jsondata.ContainsKey("user_ticket")</returns> public static JsonData GetUserInfo(string code) { string access_token = GetEntAccessToken(); string url = "https://qyapi.weixin.qq.com/cgi-bin/user/getuserinfo?access_token=" + access_token + "&code=" + code; string returnString = Utility.HttpHelper.SendGet(url); LitJson.JsonData jd = LitJson.JsonMapper.ToObject(returnString); string account = jd.ContainsKey("UserId") ? jd["UserId"].ToString() : ""; string user_ticket = jd.ContainsKey("user_ticket") ? jd["user_ticket"].ToString() : ""; return(jd); }
/// <summary> /// 获取企业的AccessToken /// </summary> /// <returns></returns> public static string GetEntAccessToken() { //取数据库存储过程的AccessToken //DataTable dt1 = SQLHelper.reDs("select * from [mes].[dbo].[WXAccount] where 1=1").Tables[0]; //string s1_AccessToken = dt1.Rows[0]["AccessToken"].ToString().Trim();//企业的AccessToken //return s1_AccessToken; string access_token = ""; if (CacheHelper.GetCache("access_token") == null) { string url = string.Format("https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid={0}&corpsecret={1}", CorpID, OrganizeSecret); string token = Utility.HttpHelper.SendGet(url);//token:{"access_token":"f3E6RsDRp1cj74QOgsVtqZN8IkmSD4zaNVkapLqKUQYQQZUmgCE1Czkv3dkqy4CHkn_tX3gBdfSO7OsZ7URQEFt1IxPWK4TCAalshzQTMxDyEr0O4RNRu8olQrSpGA6V4IPmv9ZVoHFBVjFcjuPUKC4hmtPZWoRn_FRwLks6HS2D61JCRGgeq9xAKtmpq8rB6p4jtYrbvOuCPKT_gC36qA","expires_in":7200} LitJson.JsonData jd = LitJson.JsonMapper.ToObject(token); if (jd.ContainsKey("access_token")) { //Response.Write("access_token:、、、、、、" + jd["access_token"].ToString()); access_token = jd["access_token"].ToString(); CacheHelper.SetCache("access_token", access_token, DateTime.Now.AddMinutes(60), Cache.NoSlidingExpiration); } Common.LogHelper.Write("get access_token from " + url + " access_token:" + access_token); } else { access_token = CacheHelper.GetCache("access_token").ToString(); Common.LogHelper.Write("use access_token cached "); } return(access_token); }
private void PredicatePreloadingAssets(LitJson.JsonData jsonNode, Dictionary <string, int> preload) { if (jsonNode == null || jsonNode.GetJsonType() == JsonType.None) { return; } if (jsonNode.ContainsKey(SerializationConst.components)) { var componentsJson = jsonNode[SerializationConst.components]; int componentsCount = componentsJson.Count; for (int i = 0; i < componentsCount; i++) { var componentJson = componentsJson[i]; if ((string)componentJson[SerializationConst.type] == typeof(Part).Name) { if (!componentJson.ContainsKey(SerializationConst.userDatas)) { throw new Exception(componentJson.ToJson()); } if (!componentJson[SerializationConst.userDatas].ContainsKey(SerializationConst.address)) { throw new Exception(componentJson.ToJson()); } string partAddress = (string)componentJson[SerializationConst.userDatas][SerializationConst.address]; preload[partAddress] = preload.FindOrAdd(partAddress) + 1; } } } if (jsonNode.ContainsKey(SerializationConst.children)) { var childrenJson = jsonNode[SerializationConst.children]; int childrenCount = childrenJson.Count; for (int i = 0; i < childrenCount; i++) { var childJson = childrenJson[i]; PredicatePreloadingAssets(childJson, preload); } } }
public bool Parse(LitJson.JsonData modelData) { mAssetDatas.Clear(); mModelData = modelData; if (modelData.ContainsKey(SerializationConst.assets)) { LitJsonHelper.ParseJsonObject(modelData[SerializationConst.assets], assetDatas); } mGameObjectDataModel = new RobotGameObjectDataModel(modelData); return(true); }
public static string ParseFromJson(LitJson.JsonData jsonData, string key, string defaultVal) { if (jsonData == null) { return(defaultVal); } if (!jsonData.ContainsKey(key)) { return(defaultVal); } return(jsonData[key].ToString()); }
public static float ParseFromJson(LitJson.JsonData jsonData, string key, float defaultVal) { if (jsonData == null) { return(defaultVal); } if (!jsonData.ContainsKey(key)) { return(defaultVal); } float rst = 0f; if (float.TryParse(jsonData[key].ToString(), out rst)) { return(rst); } return(defaultVal); }
/// <summary> /// 获取每次操作微信API的Token访问令牌 /// </summary> /// <param name="secret">管理组的凭证密钥</param> /// <returns></returns> public static string GetAccessToken(string secret) { if (string.IsNullOrWhiteSpace(secret) || string.IsNullOrEmpty(secret)) { secret = WeiXin.OrganizeSecret; } if (string.IsNullOrWhiteSpace(secret) || string.IsNullOrEmpty(secret)) { return(""); } string url = string.Format("https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid={0}&corpsecret={1}", CorpID, secret); string token = Utility.HttpHelper.SendGet(url);//token:{"access_token":"7p-2wZwAYnGwE80-VXubyqXNS9YZxIbmcHscjdfB78FA1zNPRKOGftJQdHAR8447","expires_in":7200} LitJson.JsonData jd = LitJson.JsonMapper.ToObject(token); if (jd.ContainsKey("access_token")) { return(jd["access_token"].ToString()); } else { return(""); } }
public BuffBaseData(LitJson.JsonData jsonData) { //json 파싱 if (jsonData == null) { Debug.LogError("Failed to parse Buff json data"); return; } id = jsonData["id"].ToString(); name = jsonData["name"].ToString(); duration = jsonData["duration"].ToFloat() * 0.001f; interval = jsonData["interval"].ToFloat() * 0.001f; resetType = jsonData["resetType"].ToString(); maxStackCount = jsonData["maxStackCount"].ToInt(); isUnique = jsonData["isUnique"].ToBool(); linkerType = jsonData["linkerType"].ToString(); linkerType2 = jsonData["linkerType2"].ToString(); string statString = jsonData["stat"].ToString(); if (string.IsNullOrEmpty(statString)) { stat = StatType.NotDefined; } else { stat = (StatType)System.Enum.Parse(typeof(StatType), statString, true); } string statString2 = jsonData["stat2"].ToString(); if (string.IsNullOrEmpty(statString2)) { stat2 = StatType.NotDefined; } else { stat2 = (StatType)System.Enum.Parse(typeof(StatType), statString2, true); } modifyType = jsonData["modifyType"].ToString(); modifyType2 = jsonData["modifyType2"].ToString(); modifyValue = jsonData["modifyValue"].ToString(); modifyValue2 = jsonData["modifyValue2"].ToString(); string linkedStatString = jsonData["linkedStat"].ToString(); if (string.IsNullOrEmpty(linkedStatString)) { linkedStat = StatType.NotDefined; } else { linkedStat = (StatType)System.Enum.Parse(typeof(StatType), linkedStatString, true); } string linkedStatString2 = jsonData["linkedStat2"].ToString(); if (string.IsNullOrEmpty(linkedStatString2)) { linkedStat2 = StatType.NotDefined; } else { linkedStat2 = (StatType)System.Enum.Parse(typeof(StatType), linkedStatString2, true); } multiplyValue = jsonData["multiply"].ToString(); multiplyValue2 = jsonData["multiply2"].ToString(); effect = jsonData["effect"].ToString(); power = jsonData["power"].ToString(); provoke = jsonData["provoke"].ToBool(); blockMove = jsonData["blockMove"].ToBool(); blockAttack = jsonData["blockAttack"].ToBool(); airborne = jsonData["airborne"].ToBool(); notTargeting = jsonData["notTargeting"].ToBool(); effectPrefab = jsonData["effectPrefab"].ToString(); trigger = jsonData["trigger"].ToString(); triggerTarget = jsonData["triggerTarget"].ToString(); triggerBuff = jsonData["triggerBuff"].ToString(); triggerProbability = jsonData["triggerProbability"].ToString(); if (jsonData.ContainsKey("triggerCooltime")) { triggerCooltime = jsonData["triggerCooltime"].ToString(); } if (jsonData.ContainsKey("skillID")) { skillID = jsonData["skillID"].ToStringJ(); } description = jsonData["description"].ToString(); }
public static int ReadIntField(this LitJson.JsonData json, string propertyName) { propertyName = propertyName.Replace(".", "#"); return(json.ContainsKey(propertyName)? json[propertyName].ToString().ToInt():0); }