Пример #1
0
        public Element GetElement(string tableID, string elementId)
        {
            Element output;
            string  data = HTTPClient.GetAsync(GetEndPoint <Table>(tableID) + "/" + elementId).Result.Content.ReadAsStringAsync().Result;

            output = JsonConvert.DeserializeObject <Element>(data);
            return(output);
        }
Пример #2
0
        public T GetItemByID <T>(string id)
        {
            T      output;
            string data = HTTPClient.GetAsync(GetEndPoint <T>(id)).Result.Content.ReadAsStringAsync().Result;

            output = JsonConvert.DeserializeObject <T>(data);
            return(output);
        }
Пример #3
0
        public List <Release> GetReleasesForTable(string tableID, bool listOnly = false)
        {
            List <Release> output;
            string         attr = listOnly ? "?tableID=" + tableID + "&list=true" : "?tableID=" + tableID;
            string         data = HTTPClient.GetAsync(GetEndPoint <Release>() + attr).Result.Content.ReadAsStringAsync().Result;

            output = JsonConvert.DeserializeObject <List <Release> >(data);
            return(output);
        }
Пример #4
0
        public List <ChangeSet> GetChangeSetsForTable(string tableID, bool ignoreChanges = false, bool listOnly = false)
        {
            List <ChangeSet> output;
            string           attr = ignoreChanges ? "?tableID=" + tableID + "&ignoreChanges=true" : "?tableID=" + tableID;

            attr = listOnly ? attr + "&list=true" : attr;
            string data = HTTPClient.GetAsync(GetEndPoint <ChangeSet>() + attr).Result.Content.ReadAsStringAsync().Result;

            output = JsonConvert.DeserializeObject <List <ChangeSet> >(data);
            return(output);
        }
Пример #5
0
        public List <T> GetListOf <T>(bool listOnly = false)
        {
            List <T> output;

            try
            {
                string attr = listOnly ? "?list=true" : "";
                string data = HTTPClient.GetAsync(GetEndPoint <T>() + attr).Result.Content.ReadAsStringAsync().Result;
                output = JsonConvert.DeserializeObject <List <T> >(data);
            }
            catch
            {
                output = new List <T>();
            }

            return(output);
        }
Пример #6
0
        /// <summary>
        /// 执行GET请求
        /// </summary>
        /// <typeparam name="TResponse">响应</typeparam>
        /// <param name="request">请求参数</param>
        /// <param name="accessToken">令牌值</param>
        /// <returns>响应参数</returns>
        public async Task <TResponse> ExecuteAsync <TResponse> (GETRequest <TResponse> request, string accessToken = null)
            where TResponse : BaseResponse
        {
            var _accessToken = accessToken ?? AccessToken;
            Uri base_uri     = CreateGETUrl(APIDoman, request.APIName, request.APIVersion, _accessToken);

            var get_url          = new Uri($"{base_uri.AbsoluteUri.TrimEnd('/','\\')}{(string.IsNullOrWhiteSpace (base_uri?.Query) ? "?" : "&")}{ CreateGETParameter (request, APIDoman, _accessToken)}");
            var httpmsg_response = await HTTPClient.GetAsync(get_url);

            string response = await httpmsg_response.Content.ReadAsStringAsync();

            try {
                return(response.ToJsonObj <TResponse> ());
            } catch (Newtonsoft.Json.JsonReaderException) {
                throw new Newtonsoft.Json.JsonReaderException($"未识别的JSON字符串:{response}");
            }
        }
Пример #7
0
 public void GetAsync(string url, LuaFunction callback = null)
 {
     HTTPClient.GetAsync(url, (r, e) => callback?.Call(r ?? e?.Message ?? null)).ConfigureAwait(false);
 }