| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- using System.Collections.Generic;
- using Essensoft.Paylink.WeChatPay.V2.Response;
- namespace Essensoft.Paylink.WeChatPay.V2.Request
- {
- /// <summary>
- /// 转换短链接 (普通商户 / 服务商)
- /// </summary>
- public class WeChatPayToolsShortUrlRequest : IWeChatPayRequest<WeChatPayToolsShortUrlResponse>
- {
- /// <summary>
- /// URL链接
- /// </summary>
- public string LongUrl { get; set; }
- #region IWeChatPayRequest Members
- private string requestUrl = "https://api.mch.weixin.qq.com/tools/shorturl";
- public string GetRequestUrl()
- {
- return requestUrl;
- }
- public void SetRequestUrl(string url)
- {
- requestUrl = url;
- }
- public IDictionary<string, string> GetParameters()
- {
- var parameters = new WeChatPayDictionary
- {
- { "long_url", LongUrl }
- };
- return parameters;
- }
- public void PrimaryHandler(WeChatPayDictionary sortedTxtParams, WeChatPaySignType signType, WeChatPayOptions options)
- {
- sortedTxtParams.Add(WeChatPayConsts.nonce_str, WeChatPayUtility.GenerateNonceStr());
- sortedTxtParams.Add(WeChatPayConsts.appid, options.AppId);
- sortedTxtParams.Add(WeChatPayConsts.sub_appid, options.SubAppId);
- sortedTxtParams.Add(WeChatPayConsts.mch_id, options.MchId);
- sortedTxtParams.Add(WeChatPayConsts.sub_mch_id, options.SubMchId);
- sortedTxtParams.Add(WeChatPayConsts.sign, WeChatPaySignature.SignWithKey(sortedTxtParams, options.APIKey, signType));
- }
- #endregion
- }
- }
|