亚洲精品成人_精品成人一区_999视频在线播放_免费黄色在线_亚洲成人久久久_久久www免费视频

代授權(quán)方實(shí)現(xiàn)業(yè)務(wù)

授權(quán)方已經(jīng)把公眾號(hào)、小程序授權(quán)給你的開放平臺(tái)第三方平臺(tái)了,接下來的代授權(quán)方實(shí)現(xiàn)業(yè)務(wù)只需一行代碼即可獲得授權(quán)方實(shí)例。

實(shí)例化

<?php
$config = [
    // 開放平臺(tái)第三方平臺(tái) APPID
    'appId' => 'wxefe41fdeexxxxxx', 

    // 開放平臺(tái)第三方平臺(tái) Token
    'token' => 'dczmnau31ea9nzcnxxxxxxxxx',

    // 開放平臺(tái)第三方平臺(tái) AES Key
    'aesKey' => 'easyswoole',

    // 開放平臺(tái)第三方平臺(tái) Secret
    'secret' => 'your-AppSecret'
];

// 開放平臺(tái)
$openPlatform = \EasySwoole\WeChat\Factory::openPlatform($config);

獲取授權(quán)方實(shí)例

// 代公眾號(hào)實(shí)現(xiàn)業(yè)務(wù)
$officialAccount = $openPlatform->officialAccount(string $appId, string $refreshToken);

// 代小程序?qū)崿F(xiàn)業(yè)務(wù)
$miniProgram = $openPlatform->miniProgram(string $appId, string $refreshToken);
  • $appId 為授權(quán)方公眾號(hào) APPID,非開放平臺(tái)第三方平臺(tái) APPID
  • $refreshToken 為授權(quán)方的 refresh_token,可通過 獲取授權(quán)方授權(quán)信息 接口獲得。

幫助授權(quán)方管理開放平臺(tái)賬號(hào)

<?php
// 代公眾號(hào)實(shí)現(xiàn)業(yè)務(wù)
$account = $officialAccount->account;

// 代小程序?qū)崿F(xiàn)業(yè)務(wù)
$account = $miniProgram->account;

// 創(chuàng)建開放平臺(tái)賬號(hào)
// 并綁定公眾號(hào)或小程序
$result = $account->create();

// 將公眾號(hào)或小程序綁定到指定開放平臺(tái)帳號(hào)下
$result = $account->bindTo($openAppId);

// 將公眾號(hào)/小程序從開放平臺(tái)帳號(hào)下解綁
$result = $account->unbindFrom($openAppid);

// 獲取公眾號(hào)/小程序所綁定的開放平臺(tái)帳號(hào)
$result = $account->getBinding();

授權(quán)第三方平臺(tái)注冊(cè)的開放平臺(tái)帳號(hào)只可用于獲取用戶 unionid 實(shí)現(xiàn)用戶身份打通。第三方平臺(tái)不可操作(包括綁定/解綁)通過 open.weixin.qq.com 線上流程注冊(cè)的開放平臺(tái)帳號(hào)。公眾號(hào)只可將此權(quán)限集授權(quán)給一個(gè)第三方平臺(tái),授權(quán)互斥。

代碼示例(在 EasySwoole 框架中使用)

使用示例 1:在 App\HttpController\Router.php (即路由)中使用:

示例代碼如下:

<?php
namespace App\HttpController;

use EasySwoole\Http\AbstractInterface\AbstractRouter;
use EasySwoole\Http\Request;
use EasySwoole\Http\Response;
use FastRoute\RouteCollector;

class Router extends AbstractRouter
{
    function initialize(RouteCollector $routeCollector)
    {
        // 假設(shè)你的公眾號(hào)消息與事件接收 URL 為:https://easyswoole.wechat.com/callback?appId=Xxxx ...
        $routeCollector->post('/callback', function (Request $request, Response $response) {

            $appId = $request->getQueryParam('appId');

            // $openPlatform 為你實(shí)例化的開放平臺(tái)對(duì)象,此處省略實(shí)例化步驟
            $officialAccount = $openPlatform->officialAccount($appId);

            // 這里的 server 為授權(quán)方的 server,而不是開放平臺(tái)的 server,請(qǐng)注意!!!
            $server = $officialAccount->server;

            $server->push(function (\EasySwoole\WeChat\Kernel\Contracts\MessageInterface $message) {
                return new \EasySwoole\WeChat\Kernel\Messages\Text('Welcome!');
            });

            // $psr7esponse 是一個(gè)顯式實(shí)現(xiàn)了 PSR-7 的對(duì)象,用戶只需要處理該對(duì)象即可正確響應(yīng)給微信
            $psr7Response = $server->serve($request); // Done!

            $response->withStatus($psr7Response->getStatusCode());

            // PSR-7 的 Header 并不是單純的 k => v 結(jié)構(gòu)
            foreach ($psr7Response->getHeaders() as $name => $values) {
                $response->withHeader($name, implode(", ", $values));
            }
            $response->write($psr7Response->getBody()->__toString());

            return false;
        });

        // 調(diào)用授權(quán)方業(yè)務(wù)例子
        $routeCollector->get('/how-to-use', function (Request $request, Response $response) {

            $officialAccount = $openPlatform->officialAccount('已授權(quán)的公眾號(hào) APPID', 'Refresh-token');

            // 獲取用戶列表:
            $officialAccount->user->list();

            $miniProgram = $openPlatform->miniProgram('已授權(quán)的小程序 APPID', 'Refresh-token');

            // 根據(jù) code 獲取 session
            $miniProgram->auth->session('js-code');

            // 其他同理

            return false;
        });
    }
}

使用示例 2:在 App\HttpController\Index.php (即控制器類)中使用,用戶可在自定義其他控制器中實(shí)現(xiàn):

假設(shè)你的開放平臺(tái)第三方平臺(tái)設(shè)置的授權(quán)事件接收 URL 為: https://easyswoole.wechat.com/openPlatform (其他事件推送同樣會(huì)推送到這個(gè) URL

示例代碼如下:

首先在 App\HttpController\Router.php 中定義路由:

<?php
namespace App\HttpController;

use EasySwoole\Http\AbstractInterface\AbstractRouter;
use FastRoute\RouteCollector;
use EasySwoole\WeChat\OpenPlatform\Server\Guard;

class Router extends AbstractRouter
{
    function initialize(RouteCollector $routeCollector)
    {
        // 假設(shè)你的公眾號(hào)消息與事件接收 URL 為:https://easyswoole.wechat.com/callback?appId=Xxxx ...
        $routeCollector->post('/callback', '/Index/callback');

        // 調(diào)用授權(quán)方業(yè)務(wù)例子
        $routeCollector->get('/how-to-use', '/Index/how_to_use');
    }
}

然后在 App\HttpController\Index.php 控制器中處理事件:

<?php

namespace App\HttpController;

use EasySwoole\Http\AbstractInterface\Controller;
use EasySwoole\WeChat\Kernel\Messages\Message;

class Index extends Controller
{
    // 假設(shè)你的公眾號(hào)消息與事件接收 URL 為:https://easyswoole.wechat.com/callback?appId=Xxxx ...
    public function callback()
    {
        $appId = $this->request()->getQueryParam('appId');

        // $openPlatform 為你實(shí)例化的開放平臺(tái)對(duì)象,此處省略實(shí)例化步驟
        $officialAccount = $openPlatform->officialAccount($appId);

        // 這里的 server 為授權(quán)方的 server,而不是開放平臺(tái)的 server,請(qǐng)注意!!!
        $server = $officialAccount->server;

        $server->push(function (\EasySwoole\WeChat\Kernel\Contracts\MessageInterface $message) {
            return new \EasySwoole\WeChat\Kernel\Messages\Text('Welcome!');
        });

        /** @var \Psr\Http\Message\ServerRequestInterface $psr7Request */
        $psr7Request = $this->request();

        // $psr7esponse 是一個(gè)顯式實(shí)現(xiàn)了 PSR-7 的對(duì)象,用戶只需要處理該對(duì)象即可正確響應(yīng)給微信
        $psr7Response = $server->serve($psr7Request);

        $this->response()->withStatus($psr7Response->getStatusCode());

        // PSR-7 的 Header 并不是單純的 k => v 結(jié)構(gòu)
        foreach ($psr7Response->getHeaders() as $name => $values) {
            $this->response()->withHeader($name, implode(", ", $values));
        }
        $this->response()->write($psr7Response->getBody()->__toString());
    }

    // 調(diào)用授權(quán)方業(yè)務(wù)例子
    public function how_to_use()
    {
        $officialAccount = $openPlatform->officialAccount('已授權(quán)的公眾號(hào) APPID', 'Refresh-token');

        // 獲取用戶列表:
        $officialAccount->user->list();

        $miniProgram = $openPlatform->miniProgram('已授權(quán)的小程序 APPID', 'Refresh-token');

        // 根據(jù) code 獲取 session
        $miniProgram->auth->session('js-code');

        // 其他同理
    }
}
亚洲精品成人_精品成人一区_999视频在线播放_免费黄色在线_亚洲成人久久久_久久www免费视频
  • <kbd id="eqi2k"><code id="eqi2k"></code></kbd><cite id="eqi2k"><tbody id="eqi2k"></tbody></cite>
    欧美午夜一区二区福利视频| 亚洲精品久久久久久一区二区| 欧美午夜一区| 久久综合九色99| 中日韩男男gay无套| 亚洲人成77777| 国内一区在线| 欧美综合二区| 亚洲国产一区二区三区高清| 视频一区视频二区视频三区视频四区国产 | 午夜国产欧美理论在线播放 | 亚洲精品一区二区三区av| 欧美精品一区在线| 俄罗斯精品一区二区| 在线亚洲自拍| 精品动漫3d一区二区三区免费版 | 欧美日韩亚洲免费| 99热在线国产| 久久久久久亚洲精品不卡4k岛国| 黄色精品免费| 欧美91视频| 亚洲乱码一区二区三区三上悠亚| 国内外成人免费视频| 69174成人网| 亚洲一区三区视频在线观看| 亚洲精品一级| 亚洲日韩视频| 亚洲欧洲日夜超级视频| 黄色精品一区| 亚洲网站啪啪| 在线免费观看欧美| 精品999网站| 亚洲激情一区二区三区| 中国成人亚色综合网站 | 久久久www| 久久亚洲影院| 国产精品sss| 国产在线精品一区| 久久99九九| 日韩av电影免费观看| 人偷久久久久久久偷女厕| 欧美日韩三区四区| 日本欧美色综合网站免费| 日本一区不卡| 夜夜春亚洲嫩草影视日日摸夜夜添夜 | 日韩少妇中文字幕| 杨幂一区欧美专区| 国产精品观看| 在线一区亚洲| 老司机精品福利视频| 成人情视频高清免费观看电影| 久久久久国产精品午夜一区| 91手机在线观看| 国产视频不卡| 天堂资源在线亚洲视频| 亚洲一区三区视频在线观看| 欧美日韩一区在线观看视频| 在线观看一区| 蜜桃久久av| 极品尤物一区二区三区| 亚洲精品不卡| 99精品国产在热久久婷婷| 欧美中日韩免费视频| 精品久久sese| 欧美在线网站| 一本色道久久精品| 成人av蜜桃| 色综合久久av| 亚洲高清资源综合久久精品| 久久久久99| 欧美性大战久久久久| 亚洲精品自在在线观看| 亚洲毛片一区| 国产一区精品在线| 一区二区三区的久久的视频| 亚洲精品色图| 国产一区二区三区奇米久涩| 亚洲午夜精品久久久中文影院av | 视频在线一区二区三区| 亚洲国产网站| 精品乱码一区二区三区| 午夜精品剧场| 久久精品人人做人人爽电影蜜月| 久久久久久久久一区二区| 国内精品久久久久久久97牛牛 | 色之综合天天综合色天天棕色| 亚洲特色特黄| 国产一区二区无遮挡| 欧美在线3区| 成人av播放| 中文字幕中文字幕99| 久久精品导航| 在线视频精品一区| 999热视频在线观看| 在线免费一区| 国产欧美日韩在线播放| 国产精品国产三级国产专区53| 成人欧美视频在线| 亚洲高清资源综合久久精品| 久久国产欧美精品| 在线亚洲成人| 亚洲欧洲精品在线| www.成人av.com| 激情国产一区| 日本一区视频在线观看| 亚洲欧美日韩视频二区| 一区二区三区在线视频看| 久久综合婷婷| 影音先锋久久| 日韩欧美亚洲日产国产| 久久精品系列| 亚洲国产黄色| 亚洲欧洲免费无码| 精品亚洲欧美日韩| 免费一级欧美片在线播放| 欧美一区综合| 日本一区高清不卡| 国产激情美女久久久久久吹潮| 禁久久精品乱码| 亚洲免费视频一区| 国产亚洲一区二区三区在线播放 | 欧美福利精品| 日韩精品一区二区三区色偷偷| 久热综合在线亚洲精品| 精品动漫一区| 欧美在线黄色| 欧美少妇一区| 国产精品一区二区三区不卡| 亚洲一区成人| 国产尤物精品| 欧美二区视频| 一区二区视频国产| 日韩精品不卡| 欧美激情国产日韩| 国产一区二区中文字幕免费看| 免费在线亚洲| 一本色道久久综合亚洲二区三区| 国产精品hd| 欧美激情在线| 在线观看成人av电影| 亚洲精品无人区| 日本中文不卡| 亚洲精品欧美精品| 日韩中文字幕av在线| 欧美日韩一区二区视频在线| 国产欧美精品一区二区三区| 痴汉一区二区三区| 91久久爱成人| aaa级精品久久久国产片| 狼狼综合久久久久综合网| 91九色视频在线观看| 114国产精品久久免费观看| 免费亚洲一区| 国产精品久久7| 国产亚洲精品自在久久| 国产一区二区三区高清视频| 精品乱码一区| 日韩伦理一区二区三区av在线| 欧美成人免费在线| 神马欧美一区二区| 在线观看免费91| 国产精品草草| 国产情侣一区| 老牛嫩草一区二区三区日本| 超碰在线97av| 欧美日韩在线一二三| 天天综合狠狠精品| 欧美午夜不卡| 99精品国产一区二区青青牛奶| 国产一区二区精品| av资源站久久亚洲| 久久精品日产第一区二区三区乱码 | 91丝袜脚交足在线播放| 国产嫩草一区二区三区在线观看| 免费99视频| 欧美激情91| 国产精品久久一区二区三区| 91免费看网站| 久久综合九色欧美狠狠| 亚洲三区视频| 在线精品在线| 国产精品久久久久久久久婷婷| 麻豆av一区二区三区| 综合久久国产| 在线亚洲自拍| 精品视频高清无人区区二区三区| 日韩成人在线资源| 激情国产一区| 国产成人女人毛片视频在线| 日本不卡二区| 伊人影院久久| 国产三区精品| 国产精品啊啊啊| 91免费看蜜桃| 中文字幕久精品免| 亚洲欧美日韩精品一区二区| 欧美一区二区三区四区夜夜大片| 国产精品xxx在线观看www| 2020国产精品久久精品不卡| 视频一区二区三区免费观看|