このサイトはプロセスを説明しようとしています: http://admin.wechat.com/wiki/index.php?title=Access_token
問題は、AppID を取得する場所や秘密の正確な情報がどこにもないことです。WeChat との通信に成功した人は他にいますか?
このサイトはプロセスを説明しようとしています: http://admin.wechat.com/wiki/index.php?title=Access_token
問題は、AppID を取得する場所や秘密の正確な情報がどこにもないことです。WeChat との通信に成功した人は他にいますか?
基本的に、@ WeChat には、サブスクリプションとサービスの 2 種類のアカウントがあります。サブスクリプション アカウントでは、メッセージの受信と自動応答を可能にし、1 日 1 回ユーザーにブロードキャストできるようにするメッセージ API へのアクセスのみが許可されます。サブスクリプション アカウントは、サブスクリプションの下の連絡先のカテゴリにもグループ化されます。
サービス アカウントは、APP ID と APP SECRET を提供します。これにより、メッセージ API 以外のほとんどすべての API に必要なアクセス トークンを生成できます。サービス アカウントは、他のすべての通常の連絡先の間にあるメイン チャットの下のユーザーの連絡先リストに表示されます。サービス アカウントで月に 1 回のみ、各ユーザーにブロードキャストできます。
サービス アカウントをお持ちの場合は、admin.wechat.com から APP ID と APP SECRET を取得します -> ログイン -> 機能 -> 詳細設定 -> 開発者モード -> トークンのすぐ下に、APP ID と APP SECRET が表示されます。
アカウントの種類を確認するには、admin.wechat.com -> ログインに移動し、画面の右上のアカウント名の横にアカウント名が表示され、そのすぐ上にサブスクリプション アカウントまたはサブスクリプション アカウントのいずれかが表示されます。サービス アカウント。
すべての API をテストしたい場合は、すべての API に完全にアクセスできる開発者サンドボックス環境に移動することをお勧めします: How does link with href for Line and Wechat?
電話番号は国際形式である必要があるため、072 111 2233 は +27721112233 と入力する必要があります。
プロセス全体を説明するコード スニペットを github に書きました。コードは django 用ですが、任意の python フレームワークで使用できます
ここにスニペットがあります
import xml.etree.ElementTree as ET
from wechat.views import WeChatView
MyCustomView(WeChatView):
token = "ad4sf65weG7Db6ddWE"
on_message(self, message):
root = ET.fromstring(message)
from = root[1].text
message_type = root[3].text
content = root[4].text
print('from: {}'.format(from))
print('message type: {}'.format(message_type))
print('content: {}'.format(content))
完全なコードはこちらhttps://github.com/tawanda/django-wechat
http://dev.wechat.com/にアクセスして、開発者アカウントにサインアップできます。
サインアップすると、サインアップ メールで App ID と AppKey を取得できます。
次に、http://admin.wechat.com/wiki/index.php?title=Main_Pageに移動して、詳細情報を取得できます。
これが私のコードです。試してみてください。
//Getting access_token from customize menus
static function get_access_token($appid,$secret){
$url="https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$appid."&secret=".$secret;
$json=http_request_json($url);//here cannot use file_get_contents
$data=json_decode($json,true);
if($data['access_token']){
return $data['access_token'];
}else{
return "Error occurred while geting the access_token";
}
}
//Though URL request is https',cannot use file_get_contents.Using CURL while asking the JSON data
function http_request_json($url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}