国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Jadual Kandungan
?一、功能介紹
二、相關(guān)接口
創(chuàng)建二維碼ticket
通過ticket換取二維碼
三、具體實(shí)現(xiàn)
Rumah applet WeChat pembangunan WeChat 微信公眾平臺開發(fā)獲取個性二維碼

微信公眾平臺開發(fā)獲取個性二維碼

Mar 03, 2017 am 10:06 AM
Platform awam WeChat

?一、功能介紹

在進(jìn)行推廣時,我們可以告訴對方,我們的微信公眾賬號是什么,客戶可以去搜索,然后關(guān)注。二維碼給我們提供了極大的便捷,只要簡單一掃描,即可關(guān)注。

如果已經(jīng)關(guān)注過,立刻跳入對話畫面。在我們進(jìn)行推廣時,不再是簡陋的文字,可以是一個有個性的二維碼,想必會很生動。

微信對二維碼提供了很好的支持,而且還可以根據(jù)需要生成不同場景的二維碼。下面我們將介紹如何獲取和使用二維碼。?

注意:限服務(wù)號,且進(jìn)行了微信認(rèn)證,費(fèi)用300

微信公眾平臺開發(fā)獲取個性二維碼

?

二、相關(guān)接口

為了滿足用戶渠道推廣分析的需要,公眾平臺提供了生成帶參數(shù)二維碼的接口。使用該接口可以獲得多個帶不同場景值的二維碼,用戶掃描后,公眾號可以接收到事件推送。

目前有2種類型的二維碼,分別是臨時二維碼和永久二維碼,前者有過期時間,最大為1800秒,但能夠生成較多數(shù)量,后者無過期時間,數(shù)量較少(目前參數(shù)只支持1--1000)。兩種二維碼分別適用于帳號綁定、用戶來源統(tǒng)計等場景。

用戶掃描帶場景值二維碼時,可能推送以下兩種事件:

  1. 如果用戶還未關(guān)注公眾號,則用戶可以關(guān)注公眾號,關(guān)注后微信會將帶場景值關(guān)注事件推送給開發(fā)者。

  2. 如果用戶已經(jīng)關(guān)注公眾號,在用戶掃描后會自動進(jìn)入會話,微信也會將帶場景值掃描事件推送給開發(fā)者。

獲取帶參數(shù)的二維碼的過程包括兩步,首先創(chuàng)建二維碼ticket,然后憑借ticket到指定URL換取二維碼。

創(chuàng)建二維碼ticket

每次創(chuàng)建二維碼ticket需要提供一個開發(fā)者自行設(shè)定的參數(shù)(scene_id),分別介紹臨時二維碼和永久二維碼的創(chuàng)建二維碼ticket過程。

臨時二維碼請求說明

http請求方式:?POST
URL:?https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token=TOKENPOST數(shù)據(jù)格式:json
POST數(shù)據(jù)例子:{"expire_seconds":?1800,?"action_name":?"QR_SCENE",?"action_info":?{"scene":?{"scene_id":?123}}}

?

永久二維碼請求說明

http請求方式:?POST
URL:?https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token=TOKENPOST數(shù)據(jù)格式:json
POST數(shù)據(jù)例子:{"action_name":?"QR_LIMIT_SCENE",?"action_info":?{"scene":?{"scene_id":?123}}}

?

參數(shù)說明

參數(shù) 說明
expire_seconds 該二維碼有效時間,以秒為單位。 最大不超過1800。
action_name 二維碼類型,QR_SCENE為臨時,QR_LIMIT_SCENE為永久
action_info 二維碼詳細(xì)信息
scene_id 場景值ID,臨時二維碼時為32位整型,永久二維碼時最大值為1000

返回說明

正確的Json返回結(jié)果:

{"ticket":"gQG28DoAAAAAAAAAASxodHRwOi8vd2VpeGluLnFxLmNvbS9xL0FuWC1DNmZuVEhvMVp4NDNMRnNRAAIEesLvUQMECAcAAA==","expire_seconds":1800}

?

參數(shù) 說明
ticket 獲取的二維碼ticket,憑借此ticket可以在有效時間內(nèi)換取二維碼。
expire_seconds 二維碼的有效時間,以秒為單位。最大不超過1800。

錯誤的Json返回示例:

{"errcode":40013,"errmsg":"invalid?appid"}

?

全局返回碼說明

使用網(wǎng)頁調(diào)試工具調(diào)試該接口

通過ticket換取二維碼

獲取二維碼ticket后,開發(fā)者可用ticket換取二維碼圖片。請注意,本接口無須登錄態(tài)即可調(diào)用。

請求說明

HTTP?GET請求(請使用https協(xié)議)
https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=TICKET

返回說明

ticket正確情況下,http 返回碼是200,是一張圖片,可以直接展示或者下載。

HTTP頭(示例)如下:

Accept-Ranges:bytes
Cache-control:max-age=604800Connection:keep-alive
Content-Length:28026Content-Type:image/jpg
Date:Wed,?16?Oct?2013?06:37:10?GMT
Expires:Wed,?23?Oct?2013?14:37:10?+0800Server:nginx/1.4.1

?

錯誤情況下(如ticket非法)返回HTTP錯誤碼404。

三、具體實(shí)現(xiàn)

?依然基于之前的機(jī)器人案例進(jìn)行功能添加,直接看代碼。

///?<summary>
????///?二維碼管理者
????///?</summary>
????public?class?DimensionalCodeManager
????{
????????///?<summary>
????????///?臨時二維碼地址
????????///?</summary>
????????///?使用string.format時,報:字符串格式錯誤,因?yàn)槠渲杏衶
????????//private?const?string?TEMP_URL?=?"{\"expire_seconds\":?1800,?\"action_name\":?\"QR_SCENE\",?\"action_info\":?{\"scene\":?{\"scene_id\":?{0}}}}";
????????///?<summary>
????????///?解決辦法,將原有字符串中的一個{用兩個{代替
????????///?</summary>
????????private?const?string?TEMP_JSON_DATA?=?"{{\"expire_seconds\":?1800,?\"action_name\":?\"QR_SCENE\",?\"action_info\":?{{\"scene\":?{{\"scene_id\":?{0}}}}}}}";
????????///?<summary>
????????///?永久二維碼地址
????????///?</summary>
????????private?const?string?PERMANENT_URL?=?"{{\"action_name\":?\"QR_LIMIT_SCENE\",?\"action_info\":?{{\"scene\":?{{\"scene_id\":?{0}}}}}}}";
????????///?<summary>
????????///?獲取ticket的URL
????????///?</summary>
????????private?const?string?GET_TICKET_URL?=?"?https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token={0}";
????????///?<summary>
????????///?獲取二維碼URL
????????///?</summary>
????????private?const?string?GET_CODE_URL?=?"https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket={0}";
????????///?<summary>
????????///?根據(jù)場景ID獲取ticket
????????///?</summary>
????????///?<param name="sceneID">場景ID</param>
????????///?<param name="isTemp">是否是臨時二維碼</param>
????????///?<returns></returns>
????????private?static?string?GetTicket(int?sceneID,?bool?isTemp)
????????{
????????????string?result?=?null;
????????????string?data?=?string.Empty;
????????????if?(isTemp)
????????????{
????????????????data?=?string.Format(TEMP_JSON_DATA,?sceneID.ToString());
????????????}
????????????else
????????????{
????????????????if?(sceneID?>?0?&&?sceneID?<=?1000)
????????????????{
????????????????????data?=?string.Format(PERMANENT_URL,?sceneID);
????????????????}
????????????????else
????????????????{
????????????????????//scene_id不合法
????????????????????return?null;
????????????????}
????????????}

????????????string?ticketJson?=?HttpUtility.GetData(string.Format(GET_TICKET_URL,Context.AccessToken));

????????????XDocument?doc?=?XmlUtility.ParseJson(ticketJson,?"root");
????????????XElement?root?=?doc.Root;
????????????if?(root?!=?null)
????????????{
????????????????XElement?ticket?=?root.Element("ticket");
????????????????if?(ticket?!=?null)
????????????????{
????????????????????result?=?ticket.Value;
????????????????}
????????????}

????????????return?result;
????????}
????????///?<summary>
????????///?創(chuàng)建臨時二維碼
????????///?</summary>
????????///?<param name="sceneID">場景id,int類型</param>
????????///?<returns></returns>
????????public?static?string?GenerateTemp(int?sceneID)
????????{
????????????string?ticket?=?GetTicket(sceneID,true);
????????????if?(ticket?==?null)
????????????{
????????????????return?null;
????????????}

????????????return?HttpUtility.GetData(string.Format(GET_CODE_URL,?ticket));
????????}
????????///?<summary>
????????///?創(chuàng)建臨時二維碼
????????///?</summary>
????????///?<param name="sceneID">場景id,int類型</param>
????????///?<returns></returns>
????????public?static?string?GeneratePermanent(int?sceneID)
????????{
????????????string?ticket?=?GetTicket(sceneID,?false);
????????????if?(ticket?==?null)
????????????{
????????????????return?null;
????????????}

????????????return?HttpUtility.GetData(string.Format(GET_CODE_URL,?ticket));
????????}
????}

?

更多微信公眾平臺開發(fā)獲取個性二維碼?相關(guān)文章請關(guān)注PHP中文網(wǎng)!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial PHP
1502
276