小程序生成小程序碼


getUnlimited 獲取小程序碼,適用於需要的碼數量極多的業務場景。通過該接口生成的小程序碼,永久有效,數量暫無限制。

小程序官方文檔 wxacode.getUnlimited

        /// <summary>
        /// 獲取小店小程序碼
        /// </summary>
        /// <returns>返回的圖片 Buffer</returns>
        public object GetWxacode(string pagePath, int width, string Id)
        {
            var accessToken = "";//獲取小程序全局唯一后台接口調用憑據(access_token
            var data = "{\"scene\":\"" + Id + "\",\"path\":\"" + HttpUtility.UrlDecode(pagePath) + "\",\"width\":" + width + "}";
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=" + accessToken);  //創建url
            request.Method = "POST";
            request.ContentType = "application/json;charset=UTF-8";
            byte[] load = Encoding.UTF8.GetBytes(data);
            request.ContentLength = load.Length;
            Stream writer = request.GetRequestStream();
            writer.Write(load, 0, load.Length);
            HttpWebResponse response = (HttpWebResponse)request.GetResponse();
            Stream s = response.GetResponseStream();
            byte[] mg = StreamToBytes(s);
            MemoryStream ms = new MemoryStream(mg);
            string qrCodeImagePath = string.Empty;
            qrCodeImagePath = "data:image/gif;base64," + Convert.ToBase64String(ms.ToArray());
            ms.Dispose();
            var QrCodeImagePath = qrCodeImagePath;            
            return QrCodeImagePath;
        }
        private static byte[] StreamToBytes(Stream stream)
        {

            List<byte> bytes = new List<byte>();
            int temp = stream.ReadByte();
            while (temp != -1)
            {
                bytes.Add((byte)temp);
                temp = stream.ReadByte();
            }
            return bytes.ToArray();

        }

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM