Maison > interface Web > js tutoriel > le corps du texte

Développement de compte public .NET WeChat pour créer des compétences menu_javascript personnalisées

WBOY
Libérer: 2016-05-16 15:50:00
original
1477 Les gens l'ont consulté

1. Avant-propos

Avant le développement, nous devons lire la documentation officielle de l'interface. Je dois me plaindre du fait que la documentation officielle de WeChat est vraiment mauvaise. Cependant, afin de développer les fonctions dont nous avons besoin, nous devons également lire ces documents.

Adresse du document d'interface : http://mp.weixin.qq.com/wiki/13/43de8269be54a0a6f64413e4dfa94f39.html

Après avoir lu ces documents, je comprends le sens fondamental. Nous créons le menu que nous voulons créer et le publions sur le serveur WeChat. Le serveur WeChat nous donne ensuite quelques codes d'état pour déterminer si notre menu est créé avec succès. besoin de faire une authentification avant d'envoyer des données json.

2. Préparation

Écrivez d'abord le menu que nous voulons créer dans un texte txt :

 {
   "button":[
    {
      "type":"view",
      "name":"付停车费",
      "url":"http://www.baidu.com"
  
    },{
      "name":"个人中心",
      "sub_button":[
      {  
        "type":"view",
        "name":"个人信息",
        "url":"http://www.baidu.com"
      },
      {
        "type":"view",
        "name":"订单查询",
        "url":"http://www.baidu.com"
      },
      {
        "type":"view",
        "name":"使用帮助",
        "url":"http://www.baidu.com"
      },
      {
        "type":"view",
        "name":"下载APP",
        "url":"http://www.baidu.com"
      }]
    }]
 }

Copier après la connexion
3. Commencez à coder

Nous créons d'abord un gestionnaire général createMenu.ashx.

Copier le code Le code est le suivant :
Chaîne publique access_token { get; set; protected void Page_Load (expéditeur de l'objet, EventArgs e)
            {
FileStream fs1 = new FileStream(Server.MapPath(".") "
\menu.txt
", FileMode.Open); ​​​​​​ StreamReader sr = new StreamReader(fs1, Encoding.GetEncoding("UTF-8"));                 string menu = sr.ReadToEnd();
             sr.Close();
                     fs1.Close();
        var str = GetPage("
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=wxd811f5114e3e56f3&secret=76eb33f66129692da16d148cb3c024f1
" , "");                JObject jo = JObject.Parse(str);             access_token = jo["access_token"].ToString();
GetPage("
https://api.weixin.qq.com/cgi-bin/menu/create?access_token
=" access_token "", menu); >

Ce qu'il faut noter ici, c'est que les paramètres appid et secret doivent être remplacés par les nôtres. Nous pouvons mettre ces paramètres dans le fichier de configuration. Il peut également être placé séparément dans une classe d'assistance.

En même temps, lors de la création d'un menu, nous devons apporter mon access_token pour vérifier notre identité. La première chose que nous devons donc faire est d'obtenir notre token. Comment obtenir ce token ? , il nous suffit de transmettre nos paramètres appid et secret

{"access_token":"jVLAT9Rp9dNgxI4pb4RWlSx_9HJLXICmk_uWDlRtAug8wcaWhZZ10eqZCYRZrEwCIJf1-vBhS9YEX00Dj7q__lJCyTIWOxTruOd25opkf-0","expires_in":7200}


La valeur de retour de la méthode GetPage ci-dessus. Pour que nous puissions récupérer notre jeton.

La dernière étape : apporter notre token et poster nos données de menu json pour créer le menu.

Lorsque vous voyez le code suivant :

{"errcode":0,"errmsg":"ok"}

Cela signifie que votre menu a été créé avec succès.


Quatre : GetPage

Le code est le suivant :

    public string GetPage(string posturl, string postData)
    {
      Stream outstream = null;
      Stream instream = null;
      StreamReader sr = null;
      HttpWebResponse response = null;
      HttpWebRequest request = null;
      Encoding encoding = Encoding.UTF8;
      byte[] data = encoding.GetBytes(postData);
      // 准备请求...
      try
      {
        // 设置参数
        request = WebRequest.Create(posturl) as HttpWebRequest;
        CookieContainer cookieContainer = new CookieContainer();
        request.CookieContainer = cookieContainer;
        request.AllowAutoRedirect = true;
        request.Method = "POST";
        request.ContentType = "application/x-www-form-urlencoded";
        request.ContentLength = data.Length;
        outstream = request.GetRequestStream();
        outstream.Write(data, 0, data.Length);
        outstream.Close();
        //发送请求并获取相应回应数据
        response = request.GetResponse() as HttpWebResponse;
        //直到request.GetResponse()程序才开始向目标网页发送Post请求
        instream = response.GetResponseStream();
        sr = new StreamReader(instream, encoding);
        //返回结果网页(html)代码
        string content = sr.ReadToEnd();
        string err = string.Empty;
        Response.Write(content);
        return content;
      }
      catch (Exception ex)
      {
        string err = ex.Message;
        return string.Empty;
      }
    }

Copier après la connexion
Ce qui précède représente l'intégralité du contenu de cet article, j'espère que vous l'aimerez tous
Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!