Maison >Applet WeChat >Développement WeChat >Développement de compte public .net WeChat - interface de base

Développement de compte public .net WeChat - interface de base

高洛峰
高洛峰original
2017-02-22 15:45:381743parcourir

Cet article décrit l'utilisation des interfaces de base dans le développement des comptes publics WeChat, notamment les suivantes :
(1) Obtenez le jeton d'autorisation (AccessToken)
(2) Obtenez l'adresse du serveur WeChat ; 🎜> (3) Téléchargez et téléchargez des fichiers multimédias ;
(4) Créez et affichez des codes QR
(5) Convertissez des liens longs en liens courts.
Adresse du projet open source : http://git.oschina.net/xrwang2/xrwang.weixin.PublicAccount
Adresse du code source de cet article : http://git.oschina.net/xrwang2/xrwang.weixin .PublicAccount /blob/master/xrwang.net/Example/BasicInterface.aspx.cs
L'adresse de démonstration de cet article : http://xrwang.net/Example/BasicInterface.aspx
L'effet de démonstration est le suivant :

Développement de compte public .net WeChat - interface de base

1 Obtenir le jeton d'autorisation

La classe AccessToken encapsule les propriétés et méthodes pertinentes du jeton d'autorisation.
(Remarque : OAuthAccessToken encapsule les méthodes associées au jeton d'autorisation de page Web.)
Les attributs sont :
access_token - chaîne de jeton
expires_in - durée de validité (unité : secondes)
Les méthodes statiques sont :
Get——Obtenir le jeton d'autorisation

/// <summary>
    /// 获取许可令牌
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void btnGetAccessToken_Click(object sender,EventArgs e)
    {
        string userName = lbPublicAccount.SelectedValue;
        AccessToken token = AccessToken.Get(userName);
        txtAccessToken.Text = token != null ? token.access_token : "获取许可令牌失败。";
    }
2 Obtenir l'adresse du serveur WeChat

La classe ServerAddresses encapsule les attributs et les méthodes permettant d'obtenir l'adresse du serveur.
Les attributs incluent :
ip_list - tableau d'adresses du serveur
Les méthodes statiques incluent :
Get - obtenir l'adresse du serveur

/// <summary>
    /// 获取微信服务器地址
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void btnGetServerAddress_Click(object sender, EventArgs e)
    {
        ErrorMessage errorMessage;
        ServerAddresses addresses = ServerAddresses.Get(out errorMessage);
        if (errorMessage.IsSuccess && addresses.ip_list != null)
        {
            StringBuilder sb = new StringBuilder();
            foreach (string ip in addresses.ip_list)
                sb.AppendFormat("{0},", ip);
            txtServerAddress.Text = sb.ToString();
        }
        else
            txtServerAddress.Text = string.Format("获取微信服务器地址失败。{0}", errorMessage);
    }
3 Télécharger et télécharger des fichiers multimédias

MultiMediaHelper La classe encapsule les méthodes associées aux fichiers multimédia.
Les méthodes statiques sont :
Upload - Télécharger des fichiers multimédias
Download - Télécharger des fichiers multimédias
GetDownloadUrl - Obtenir l'adresse des fichiers multimédias
GetVideoMediaId - Obtenir l'ID du média vidéo dans le message de groupe

/// <summary>
    /// 上传多媒体文件
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void btnUpload_Click(object sender, EventArgs e)
    {
        string userName = lbPublicAccount.SelectedValue;
        MultiMediaTypeEnum type = (MultiMediaTypeEnum)Enum.Parse(typeof(MultiMediaTypeEnum), lbMultiMediaType.SelectedValue);
        string filename = fileUpload.FileName;
        byte[] bytes = fileUpload.FileBytes;
        ErrorMessage errorMessage;
        MultiMediaUploadResult result = MultiMediaHelper.Upload(userName, type, filename, bytes, out errorMessage);
        if (errorMessage.IsSuccess && result != null)
            hlShowMultiMedia.NavigateUrl = MultiMediaHelper.GetDownloadUrl(AccessToken.Get(userName).access_token, result.MediaId);
        else
            hlShowMultiMedia.NavigateUrl = string.Format("javascript:alert(&#39;上传多媒体文件失败。\r\n{0}&#39;);", errorMessage);
    }

上传多媒体文件,并生成下载链接的示例
4 Créer et afficher le code QR

La classe QrCode encapsule les propriétés et méthodes liées au code QR.
Les attributs sont :
ticket - le ticket du code QR
expire_seconds - la durée de validité du code QR (unité : secondes)
url - l'adresse après analyse de l'image du code QR
Les méthodes statiques sont :
Créer——Créer un code QR. Différentes méthodes de surcharge peuvent créer différents types de codes QR
GetUrl——Obtenir l'adresse de l'image du code QR

/// <summary>
    /// 创建二维码
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void btnCreateQrCode_Click(object sender, EventArgs e)
    {
        string userName = lbPublicAccount.SelectedValue;
        string strSceneId = txtSceneId.Text;
        QrCode qrcode=null;
        ErrorMessage errorMessage;
        if( cbIsTemple.Checked)
        {
            int expireSeconds = int.Parse(txtExpireSeconds.Text);
            int sceneId;
            if (int.TryParse(strSceneId, out sceneId))
                qrcode = QrCode.Create(userName, expireSeconds, sceneId, out errorMessage);
            else
                errorMessage = new ErrorMessage(ErrorMessage.ExceptionCode, "场景值id必须为整数。");
        }
        else
        {
            int sceneId;
            if (int.TryParse(strSceneId, out sceneId))
                qrcode = QrCode.Create(userName, sceneId, out errorMessage);
            else
                qrcode = QrCode.Create(userName, strSceneId, out errorMessage);
        }
        if (errorMessage.IsSuccess && qrcode != null)
            imgQrCode.ImageUrl = QrCode.GetUrl(qrcode.ticket);
        else
            imgQrCode.ImageUrl = "";
    }
5 Lien long en lien court

ShortUrl encapsule la méthode de conversion d'un lien long en lien court.

Les méthodes statiques sont :
Get - Convertir les liens longs en liens courts

/// <summary>
    /// 获取短链接
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void btnGetShortUrl_Click(object sender, EventArgs e)
    {
        string userName = lbPublicAccount.SelectedValue;
        ErrorMessage errorMessage;
        string shortUrl = ShortUrl.Get(userName, txtLongUrl.Text, out errorMessage);
        if (errorMessage.IsSuccess && string.IsNullOrWhiteSpace(shortUrl))
            txtShortUrl.Text = shortUrl;
        else
            txtShortUrl.Text = string.Format("获取短链接失败。{0}", errorMessage);
    }
Merci d'avoir lu cet article, j'espère qu'il vous sera utile.

Pour plus d'articles sur le développement de comptes publics .net WeChat - interface de base, veuillez faire attention au site Web PHP chinois !


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn