Home >WeChat Applet >WeChat Development >C# WeChat development: Basic class WeiXinConst

C# WeChat development: Basic class WeiXinConst

高洛峰
高洛峰Original
2017-03-09 15:44:461642browse

In this article, let’s learn about C# WeChat development: the basic class WeiXinConst

The public account information that needs to be used during the publishing process is configured here. In addition, the Url information that needs to be used does not need to be changed.

/// <summary>
/// 微信 需要用到的Url、Json常量
/// </summary>
public class WeiXinConst
{
    #region Value Const
 
    /// <summary>
    /// 微信开发者 AppId
    /// </summary>
    public const string AppId = "你的AppId";
 
 
    /// <summary>
    /// 微信开发者 Secret
    /// </summary>
    public const string Secret = "你得Secret";
 
 
    /// <summary>
    /// V2:支付请求中 用于加密的秘钥Key,可用于验证商户的唯一性,对应支付场景中的AppKey
    /// </summary>
    public static string PaySignKey = "V2.PaySignKey";
 
 
    /// <summary>
    /// V2:财付通签名key
    /// V3:商户支付密钥 Key。登录微信商户后台,进入栏目【账户设置】 【密码安全 】【API 安全】 【API 密钥】 ,进入设置 API 密钥。
    /// </summary>
    public const string PartnerKey = "PartnerKey";
 
    /// <summary>
    /// 商户号
    /// </summary>
    public const string PartnerId = "PartnerId";
 
 
    /// <summary>
    /// 百度地图Api  Ak
    /// </summary>
    public const string BaiduAk = "BaiduAk";
 
    /// <summary>
    /// 用于验证 请求 是否来自 微信
    /// </summary>
    public const string Token = "Token";
 
    /// <summary>
    /// 证书文件 路径
    /// </summary>
    public const string CertPath = @"E:\cert\apiclient_cert.pem";
 
 
    /// <summary>
    /// 证书文件密码(默认为商户号)
    /// </summary>
    public const string CertPwd = "111";
 
    #endregion
 
    #region Url Const
 
    #region AccessTokenUrl
 
    /// <summary>
    /// 公众号 获取Access_Token的Url(需Format  0.AppId 1.Secret)
    /// </summary>
    private const string AccessToken_Url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={0}&secret={1}";
 
    /// <summary>
    /// 公众号 获取Token的Url
    /// </summary>
    public static string WeiXin_AccessTokenUrl { get { return string.Format(AccessToken_Url, AppId, Secret); } }
 
    #endregion
 
    #region 获取用户信息Url
 
    /// <summary>
    /// 根据Code 获取用户OpenId Url
    /// </summary>
    private const string User_GetOpenIdUrl = "https://api.weixin.qq.com/sns/oauth2/access_token?appid={0}&secret={1}&code={2}&grant_type=authorization_code";
 
    /// <summary>
    /// 根据Code 获取用户OpenId的Url 需要Format 0.code
    /// </summary>
    public static string WeiXin_User_OpenIdUrl { get { return string.Format(User_GetOpenIdUrl, AppId, Secret, "{0}"); } }
 
    /// <summary>
    /// 根据OpenId 获取用户基本信息 Url(需要Format0.access_token 1.openid)
    /// </summary>
    public const string WeiXin_User_GetInfoUrl = "https://api.weixin.qq.com/cgi-bin/user/info?access_token={0}&openid={1}&lang=zh_CN";
 
    #endregion
 
    #region OAuth2授权Url
 
    /// <summary>
    /// OAuth2授权Url,需要Format0.AppId  1.Uri  2.state
    /// </summary>
    private const string OAuth2_Url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid={0}&redirect_uri={1}&response_type=code&scope=snsapi_base&state={2}#wechat_redirect";
 
    /// <summary>
    /// OAuth2授权Url,需要Format  0.Uri  1.state
    /// </summary>
    public static string WeiXin_User_OAuth2Url { get { return string.Format(OAuth2_Url, AppId, "{0}", "{1}"); } }
 
    #endregion
 
    #region QrCode Url
 
    /// <summary>
    /// 创建获取QrCode的Ticket Url  需要Format 0 access_token
    /// </summary>
    public const string WeiXin_Ticket_CreateUrl = "https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token={0}";
 
    /// <summary>
    /// 获取二维码图片Url,需要Format 0.ticket
    /// </summary>
    public const string WeiXin_QrCode_GetUrl = "https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket={0}";
 
    #endregion
 
    #region Baidu 逆地理编码Url
 
    /// <summary>
    /// 经纬度  逆地理编码 Url  需要Format 0.ak  1.经度  2.纬度
    /// </summary>
    private const string BaiduGeoCoding_ApiUrl = "http://api.map.baidu.com/geocoder/v2/?ak={0}&location={1},{2}&output=json&pois=0";
 
    /// <summary>
    /// 经纬度  逆地理编码 Url  需要Format 0.经度  1.纬度
    /// </summary>
    public static string Baidu_GeoCoding_ApiUrl
    {
        get
        {
            return string.Format(BaiduGeoCoding_ApiUrl, BaiduAk, "{0}", "{1}");
        }
    }
 
    #endregion
 
    #region Menu Url
 
    /// <summary>
    /// 创建菜单Url 需要Format 0.access_token
    /// </summary>
    public const string WeiXin_Menu_CreateUrl = "https://api.weixin.qq.com/cgi-bin/menu/create?access_token={0}";
 
    /// <summary>
    /// 获取菜单Url 需要Format 0.access_token
    /// </summary>
    public const string WeiXin_Menu_GetUrl = "https://api.weixin.qq.com/cgi-bin/menu/get?access_token={0}";
 
    /// <summary>
    /// 删除菜单Url 需要Format 0.access_token
    /// </summary>
    public const string WeiXin_Menu_DeleteUrl = "https://api.weixin.qq.com/cgi-bin/menu/delete?access_token={0}";
 
 
    #endregion
 
    #region 支付相关Url
 
    /// <summary>
    /// 生成预支付账单Url ,需替换 0 access_token
    /// </summary>
    public const string WeiXin_Pay_PrePayUrl = "https://api.weixin.qq.com/pay/genprepay?access_token={0}";
 
    /// <summary>
    /// 订单查询Url ,需替换0 access_token
    /// </summary>
    public const string WeiXin_Pay_OrderQueryUrl = "https://api.weixin.qq.com/pay/orderquery?access_token={0}";
 
    /// <summary>
    /// 发货通知Url,需替换 0 access_token
    /// </summary>
    public const string WeiXin_Pay_DeliverNotifyUrl = "https://api.weixin.qq.com/pay/delivernotify?access_token={0}";
 
    #region 统一支付相关Url (V3接口)
 
    /// <summary>
    /// 统一预支付Url
    /// </summary>
    public const string WeiXin_Pay_UnifiedPrePayUrl = "https://api.mch.weixin.qq.com/pay/unifiedorder";
 
    /// <summary>
    /// 订单查询Url
    /// </summary>
    public const string WeiXin_Pay_UnifiedOrderQueryUrl = "https://api.mch.weixin.qq.com/pay/orderquery";
 
    /// <summary>
    /// 退款申请Url
    /// </summary>
    public const string WeiXin_Pay_UnifiedOrderRefundUrl = "https://api.mch.weixin.qq.com/secapi/pay/refund";
 
    #endregion
 
 
    #endregion
 
    #endregion
 
    #region Json Const
 
    /// <summary>
    /// 获取二维码 所需Ticket 需要上传的Json字符串(需要Format 0.scene_id)
    /// </summary>
    /// <remarks>scene_id场景值ID  永久二维码时最大值为100000(目前参数只支持1--100000)</remarks>
    public const string WeiXin_QrCodeTicket_Create_JsonString = "{\"action_name\": \"QR_LIMIT_SCENE\", \"action_info\": {\"scene\": {\"scene_id\":{0}}}}";
 
    #endregion
 
}


The above is the detailed content of C# WeChat development: Basic class WeiXinConst. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn