Beispiel #1
0
        /// <summary>
        /// 获取openId
        /// </summary>
        /// <param name="request">请求参数</param>
        /// <param name="config">配置</param>
        /// <returns>结果</returns>
        public static string GetOpenidFromCode(OpenidFromCodeRequest request, Config config)
        {
            var url  = TenpayUtil.GetOpenidFromCodeUrl(request, config);
            var data = HttpHelp.GetUrl(url);

            return(data);
        }
Beispiel #2
0
        /// <summary>
        /// 通过code换取网页授权openid的请求URL
        /// </summary>
        /// <param name="request">请求参数</param>
        /// <param name="config">配置</param>
        /// <returns>URL</returns>
        public static string GetOpenidFromCodeUrl(OpenidFromCodeRequest request, Config config)
        {
            SortedDictionary <string, string> sParams = new SortedDictionary <string, string>
            {
                { "appid", config.GetAppId() },
                { "secret", config.GetAppSecret() },
                { "code", request.Code },
                { "grant_type", "authorization_code" }
            };
            string buff = string.Empty;

            foreach (KeyValuePair <string, string> pair in sParams)
            {
                if (pair.Key != "sign" && pair.Value != "")
                {
                    buff += pair.Key + "=" + pair.Value + "&";
                }
            }
            buff = buff.Trim('&');
            string url = $"{Config.AccessTokenUrl}?{buff}";

            return(url);
        }