モバイル デバイスの人気とソーシャル メディアの台頭により、WeChat パブリック アカウントは多くの企業や個人にとって宣伝とプロモーションのための効果的なツールとなっています。 WeChat公式アカウントをWebアプリケーションに統合することで、ビジネスの推進やユーザーサービスなどのさまざまなニーズを効果的に実現できます。 Golang を使用して Web アプリケーション用の WeChat パブリック アカウント開発を実装すると、より効率的で安定したソリューションが得られます。
この記事では、Golang を使用して Web アプリケーションを作成し、WeChat パブリック アカウント サービスを統合する方法を紹介します。
まず、Golang 開発環境をセットアップする必要があります。公式 Web サイト (https: //golang.org/) をインストールします。
Golang を使用して Web アプリケーションを作成するプロセスでは、開発にいくつかの依存ライブラリを使用する必要があります。その中でも、Gin は現在人気の Web フレームワークであり、Go-Wechat は Golang の WeChat 開発フレームワークです。次のコマンドを使用して依存関係をインストールできます:
go get -u github.com/gin-gonic/gin go get -u github.com/silenceper/wechat/v2
次のコード例を使用して、単純な Web アプリケーションを作成できます:
package main import "github.com/gin-gonic/gin" func main() { r := gin.Default() r.GET("/", func(c *gin.Context) { c.String(200, "Hello World") }) r.Run(":8080") }
Execute Web アプリケーションを開始するコード。ブラウザから http://localhost:8080 にアクセスすると、「Hello World」という出力が表示されます。
WeChat パブリック アカウント サービスの統合を開始する前に、WeChat パブリック アカウントを登録し、取得する必要があります。 WeChat公式アカウントのAppIDとAppSecret。 [WeChat パブリック プラットフォーム公式 Web サイト](https://mp.weixin.qq.com/cgi-bin/registermidpage?action=index) にアクセスして登録できます。
WeChat パブリック アカウント サービスを統合するときは、Go-Wechat ライブラリで関連する設定を実行する必要があります。
package main import ( "github.com/gin-gonic/gin" "github.com/silenceper/wechat/v2/cache" "github.com/silenceper/wechat/v2/config" "github.com/silenceper/wechat/v2/officialaccount" ) func main() { r := gin.Default() // 配置微信公众号信息 cfg := &config.Config{ AppID: "your app id", AppSecret: "your app secret", Token: "your token", AESKey: "your aes key", Cache: cache.NewMemory(), } // 初始化Wechat实例 oa := officialaccount.NewOfficialAccount(cfg) r.GET("/", func(c *gin.Context) { c.String(200, "Welcome to my Wechat Public Platform") }) // 微信公众号接入验证 r.GET("/wechat", func(c *gin.Context) { if err := oa.Server.VerifySignature(c.Writer, c.Request); err != nil { c.String(200, "Not a valid request") return } c.String(200, c.Query("echostr")) }) r.Run(":8080") }
このうち、cfgはWeChatパブリックアカウントの設定情報であり、独自のAppID、AppSecret、Token、AESKeyなどの情報を入力する必要があります。 Cache はキャッシュ インスタンスです。ここではメモリ キャッシュを使用しますが、Redis などの他のキャッシュ方法を使用することもできます。 oa は Wechat インスタンスであり、WeChat サーバーにリクエストを送信し、提供される関数を通じて応答を取得できます。
ユーザーからメッセージやイベントを取得した後、それに応じて処理する必要があります。これは、次のコード例で実現できます。
package main import ( "github.com/gin-gonic/gin" "github.com/silenceper/wechat/v2/cache" "github.com/silenceper/wechat/v2/config" "github.com/silenceper/wechat/v2/officialaccount" ) func main() { r := gin.Default() // 配置微信公众号信息 cfg := &config.Config{ AppID: "your app id", AppSecret: "your app secret", Token: "your token", AESKey: "your aes key", Cache: cache.NewMemory(), } // 初始化Wechat实例 oa := officialaccount.NewOfficialAccount(cfg) r.GET("/", func(c *gin.Context) { c.String(200, "Welcome to my Wechat Public Platform") }) // 微信公众号接入验证 r.GET("/wechat", func(c *gin.Context) { if err := oa.Server.VerifySignature(c.Writer, c.Request); err != nil { c.String(200, "Not a valid request") return } c.String(200, c.Query("echostr")) }) // 处理微信公众号事件和消息 r.POST("/wechat", func(c *gin.Context) { server := oa.Server msg, err := server.ParseRequest(c.Request) if err != nil { c.String(200, "Parsing request error") return } switch msg.Event { case "subscribe": resp := server.GetInviteFollowersResp("欢迎关注我的公众号!") c.String(200, resp) case "text": reqMsg := msg.(*request.Text) resp := server.GetMaterialTextResp(reqMsg.Content) c.String(200, resp) } }) r.Run(":8080") }
上記のコード例では、WeChat 公式アカウント サーバーにリクエストを送信し、WeChat 公式アカウント サービスのコールバック関数を通じて応答しました。リクエストを処理するとき、さまざまな種類のイベントやメッセージに基づいてさまざまな処理操作を実行します。
この記事の導入部分を通じて、Golang を使用して Web アプリケーション用の WeChat パブリック アカウント開発を実装する方法を学ぶことができます。その中で、Web フレームワークとして Jin を、WeChat 開発フレームワークとして Go-Wechat を使用し、WeChat パブリック アカウントの登録、WeChat パブリック アカウント情報の構成、WeChat パブリック アカウントのイベントとメッセージの処理方法を紹介しました。上記の手順により、効率的で安定した WeChat パブリック アカウント サービスを迅速に開発できます。
以上がGolang を使用して Web アプリケーション用の WeChat パブリック アカウント開発を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。