IA.SDK/Client/ApiSDKClient.cs

(开头部分) 8KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using System;
using System.IO;
using System.Text;
using System.Reflection;
using System.Xml;
using IA.SDK.Base;
using IA.SDK.Utils;

namespace IA.SDK.Client
{
    /// <summary>
    /// 
    /// </summary>
    public class ApiSdkClient
    {
        private string BaseAddress { get; set; }
        private IApiStats IApiStats { get; set; }

        /// <summary>
        /// 用于对api进行访问的客户端
        /// </summary>
        /// <param name="apiAddress">API地址</param>
        /// <param name="apiStats">统计</param>
        public ApiSdkClient(
            string apiAddress,
            IApiStats apiStats = null)
        {
            if (string.IsNullOrEmpty(apiAddress))
            {
                throw new Exception("缺失初始化参数ApiAddress");
            }
            BaseAddress = apiAddress;
            IApiStats = apiStats;
        }



        /// <summary>
        /// 发起请求
        /// </summary>
        /// <typeparam name="T">反馈对象</typeparam>
        /// <param name="request">请求对象</param>
        /// <returns></returns>
        public T Request<T>(IApiRequest<T> request) where T : IApiResponse
        {
            request.SignRequest();

            // 性能统计
            if (IApiStats != null)
            {
                IApiStats.IncrApi();
                IApiStats.LogApiRequestBegin();
            }

            var response = WebRequestHelper.Request(
                WebRequestHelper.Method.Post,
                BaseAddress + request.GetApiName(),
                "application/json",
                 JsonHelper.ToJson(request));

后面还有 163 行代码,购买后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。