private static BaseCloudResponse <T> GetCloudResponse <T>(string method, DiscuzCloudMethodParameter mParams) { string text = mParams.Find("sTimestamp"); text = (string.IsNullOrEmpty(text) ? Utils.ConvertToUnixTimestamp(DateTime.Now).ToString() : text); string postData = string.Format("format={0}&method={1}&sId={2}&sig={3}&ts={4}{5}", new object[] { FORMAT, method, DiscuzCloudConfigInfo.Current.Cloudsiteid, DiscuzCloud.GetCloudMethodSignature(method, text, mParams), text, mParams.GetPostData() }); string httpWebResponse = Utils.GetHttpWebResponse(CLOUD_URL, postData); BaseCloudResponse <T> result; try { result = JavaScriptConvert.DeserializeObject <BaseCloudResponse <T> >(httpWebResponse); } catch { BaseCloudResponse <string> baseCloudResponse = JavaScriptConvert.DeserializeObject <BaseCloudResponse <string> >(httpWebResponse); result = new BaseCloudResponse <T> { ErrCode = baseCloudResponse.ErrCode, ErrMessage = baseCloudResponse.ErrMessage }; } return(result); }