Heim > php教程 > php手册 > Hauptteil

Netzwerkweite Release-Überprüfung der offenen WeChat-Plattform eines Drittanbieters

WBOY
Freigeben: 2016-09-24 09:02:49
Original
1702 Leute haben es durchsucht

Unser Geschäft besteht darin, die öffentlichen WeChat-Konten einer großen Anzahl von Kunden für die offene WeChat-Plattform eines Drittanbieters zu autorisieren und die Schnittstelle für öffentliche Kundenkonten über die offene Plattform eines Drittanbieters zu betreiben.

Die offene Drittanbieterplattform WeChat befindet sich in der Testphase (noch nicht für das gesamte Netzwerk freigegeben) und die autorisierten offiziellen Konten können nur zur Whitelist hinzugefügt werden. Daher muss das Hosten einer großen Anzahl öffentlicher Konten im gesamten Netzwerk veröffentlicht werden.

Bei der Veröffentlichung im gesamten Netzwerk simuliert WeChat öffentliche Konten und Fan-WeChat-IDs, um die offene Plattform Ihres Drittanbieters zu überprüfen:

Ein Teil des Bestätigungscodes unter Laravel lautet wie folgt:

<span style="color: #008080;"> 1     </span> <span style="color: #0000ff;">if</span>(<span style="color: #800080;">$app_id</span> == 'wx570bc396a51b8ff8'<span style="color: #000000;">){
</span><span style="color: #008080;"> 2</span>             <span style="color: #0000ff;">if</span>(<span style="color: #800080;">$MsgType</span> == 'text'){<span style="color: #008000;">//</span><span style="color: #008000;">普通文本验证</span>
<span style="color: #008080;"> 3</span>                 <span style="color: #800080;">$repType</span> = "text"<span style="color: #000000;">;
</span><span style="color: #008080;"> 4</span>                 <span style="color: #800080;">$content</span> = <span style="color: #800080;">$this</span>-><span style="color: #000000;">getRecMsg_Content();
</span><span style="color: #008080;"> 5</span>                 <span style="color: #0000ff;">if</span>(<span style="color: #800080;">$content</span> == 'TESTCOMPONENT_MSG_TYPE_TEXT'<span style="color: #000000;">){
</span><span style="color: #008080;"> 6</span>                     <span style="color: #800080;">$repCont</span> = 'TESTCOMPONENT_MSG_TYPE_TEXT_callback'<span style="color: #000000;">;
</span><span style="color: #008080;"> 7</span>                 }<span style="color: #0000ff;">else</span>{<span style="color: #008000;">//</span><span style="color: #008000;">API验证</span>
<span style="color: #008080;"> 8</span>                     <span style="color: #800080;">$repCont</span> =  <span style="color: #008080;">explode</span>(":",<span style="color: #800080;">$content</span>)[1];<span style="color: #008000;">//</span><span style="color: #008000;">接受微信放发来的query_auth_code</span>
<span style="color: #008080;"> 9</span>                     <span style="color: #800080;">$msgcontent</span> = ["content"=><span style="color: #800080;">$repCont</span>.'_from_api'<span style="color: #000000;">];
</span><span style="color: #008080;">10</span>                      <span style="color: #008000;">//</span><span style="color: #008000;">获取access_token</span>
<span style="color: #008080;">11</span>                     <span style="color: #800080;">$Client</span> = <span style="color: #0000ff;">new</span> Client(['base_uri' => 'https://api.weixin.qq.com/cgi-bin/component/api_query_auth'<span style="color: #000000;">]);
</span><span style="color: #008080;">12</span>                     <span style="color: #800080;">$client_result</span> = <span style="color: #800080;">$Client</span>->post('?component_access_token=此时有效的第三方开放平台access_token',['json' => ['component_appid'=>'你的component_appid', 'authorization_code'=><span style="color: #800080;">$repCont</span>]])-><span style="color: #000000;">getBody();
</span><span style="color: #008080;">13</span>                     <span style="color: #800080;">$access_token</span> = json_decode(<span style="color: #800080;">$client_result</span>,<span style="color: #0000ff;">true</span>)['authorization_info']['authorizer_access_token'<span style="color: #000000;">];
</span><span style="color: #008080;">14</span>                     <span style="color: #008000;">//</span><span style="color: #008000;">发客服消息</span>
<span style="color: #008080;">15</span>                     App::make('weixin.cp')->setAuthorizerToken(<span style="color: #800080;">$access_token</span>)->sendKeFuMsg(<span style="color: #800080;">$this</span>->getFromUserName(),'text',<span style="color: #800080;">$msgcontent</span><span style="color: #000000;">);
</span><span style="color: #008080;">16</span>                     <span style="color: #800080;">$repCont</span> = <span style="color: #800080;">$repCont</span>.'_from_api'<span style="color: #000000;">;
</span><span style="color: #008080;">17</span> <span style="color: #000000;">                }
</span><span style="color: #008080;">18</span>             }<span style="color: #0000ff;">elseif</span>(<span style="color: #800080;">$MsgType</span> == 'event'){<span style="color: #008000;">//事件</span><span style="color: #008000;">验证</span>
<span style="color: #008080;">19</span>                 <span style="color: #800080;">$repType</span> = "text"<span style="color: #000000;">;
</span><span style="color: #008080;">20</span>                 <span style="color: #800080;">$repCont</span> = <span style="color: #800080;">$MsgEvent</span>."from_callback"<span style="color: #000000;">;
</span><span style="color: #008080;">21</span> <span style="color: #000000;">            }<br><br>         //返回给微信xml
</span><span style="color: #008080;">22</span>             <span style="color: #800080;">$weixin_mp</span> = App::make('weixin.mp'<span style="color: #000000;">);
</span><span style="color: #008080;">23</span>             <span style="color: #800080;">$weixin_mp</span>->on(<span style="color: #800080;">$repType</span>, <span style="color: #0000ff;">function</span>() <span style="color: #0000ff;">use</span>(<span style="color: #800080;">$repType</span>,<span style="color: #800080;">$repCont</span><span style="color: #000000;">) {
</span><span style="color: #008080;">24</span>                 <span style="color: #0000ff;">return</span> App::make('weixin.mp')->makeMessage(<span style="color: #800080;">$repType</span> ,<span style="color: #800080;">$repCont</span><span style="color: #000000;">);
</span><span style="color: #008080;">25</span> <span style="color: #000000;">            });
</span><span style="color: #008080;">26</span>             <span style="color: #800080;">$response</span> = <span style="color: #800080;">$weixin_mp</span>->trigger(<span style="color: #800080;">$repType</span><span style="color: #000000;">);
</span><span style="color: #008080;">27</span>             <span style="color: #0000ff;">return</span> <span style="color: #800080;">$response</span><span style="color: #000000;">;
</span><span style="color: #008080;">28</span>         }
Nach dem Login kopieren

Mit dem Testen beginnen, so nervös:

Dann ist das Ergebnis:

Erfolg! ! !

Offizielles Handbuch von WeChat:

Web Publishing-Verifizierungshandbuch

https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=open1419318611&token=&lang=zh_CN

Schritt 4: Verwenden Sie den Autorisierungscode, um die Anmeldeinformationen und Autorisierungsinformationen für die Schnittstelle des offiziellen Kontos auszutauschen

https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=open1453779503&token=&lang=zh_CN

Kundendienstnachricht senden:

http://mp.weixin.qq.com/wiki/11/c88c270ae8935291626538f9c64bd123.html

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage