Example #1
0
 /// <summary>
 /// 取OAuth.webconfig配置信息
 /// </summary>
 /// <param name="authEnum">授权类型</param>
 /// <returns>取OAuth.webconfig配置信息</returns>
 public static ConfigInfo GetConfigInfo(OAuthEnum authEnum) {
     Xml2 xml = new Xml2("~/oauth.config".GetMapPath());
     string _enum = authEnum.ToString();
     return new ConfigInfo() { 
         AppKey = xml.GetNodeText("/configuration/" + _enum + "/appKey"),
         AppSecret = xml.GetNodeText("/configuration/" + _enum + "/appSecret"),
         RedirectUrl = xml.GetNodeText("/configuration/" + _enum + "/redirectUrl"),
     };
 }
Example #2
0
        /// <summary>
        /// 取OAuth.webconfig配置信息
        /// </summary>
        /// <param name="authEnum">授权类型</param>
        /// <returns>取OAuth.webconfig配置信息</returns>
        public static ConfigInfo GetConfigInfo(OAuthEnum authEnum)
        {
            Xml2   xml   = new Xml2("~/oauth.config".GetMapPath());
            string _enum = authEnum.ToString();

            return(new ConfigInfo()
            {
                AppKey = xml.GetNodeText("/configuration/" + _enum + "/appKey"),
                AppSecret = xml.GetNodeText("/configuration/" + _enum + "/appSecret"),
                RedirectUrl = xml.GetNodeText("/configuration/" + _enum + "/redirectUrl"),
            });
        }
        string IYouZanClient.Invoke(IAPI api, IAuth auth, IDictionary <string, string> headers, List <KeyValuePair <string, string> > files)
        {
            string url = null;

            if (api != null)
            {
                OAuthEnum oAuth = api.GetOAuthType();
                switch (oAuth)
                {
                case OAuthEnum.TOKEN:
                    url = BuildUrl(api, auth);
                    break;

                case OAuthEnum.SIGN:
                    break;

                case OAuthEnum.DIRECT:
                    url = BuildUrl(api, auth);
                    break;
                }
                var        method    = api.GetHttpMethod();
                IApiParams apiParams = api.GetAPIParams();
                IDictionary <string, object> requestParams = apiParams.ToParams();
                IDictionary <string, string> header        = api.GetHeaders();
                string result = defaultHttpClient.Send(url, requestParams, header, files);
                if (YouZanConfig.SaveApiLogToDB)
                {
                    YouZanLogger log = new YouZanLogger
                    {
                        ApiName      = api.GetName(),
                        ApiVersion   = api.GetVersion(),
                        ApiMethod    = api.GetHttpMethod(),
                        AuthType     = oAuth.ToString(),
                        RequestUrl   = url,
                        PostData     = JsonConvert.SerializeObject(requestParams),
                        Header       = JsonConvert.SerializeObject(header),
                        ResponseData = result,
                        ClientId     = api.GetClientId(),
                        GrantId      = api.GetGrantId()
                    };
                    Task.Run(log.Save);
                }
                return(result);
            }
            return(null);
        }