ホームページ  >  記事  >  バックエンド開発  >  WeChat パブリック アカウント開発チュートリアル パート 13 - グラフィックおよびテキスト メッセージの完全ガイド_PHP チュートリアル

WeChat パブリック アカウント開発チュートリアル パート 13 - グラフィックおよびテキスト メッセージの完全ガイド_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-20 11:12:331186ブラウズ

はじめにと概要

すでに何人かの読者が「Liu Feng はテキスト メッセージを例としてのみ使用し、グラフィック メッセージについてはまったく言及しておらず、グラフィック メッセージの使用方法を知りませんでした。」 そうですね、私は最初、基本的な API がカプセル化されていると思っていましたが、それは間違いでした。 , フレームワークが設定されており、テキスト メッセージの使用方法の例が示されています。誰もが猫を真似てトラを描くことができます。おそらく私の絵のスキルが非常に低いため、私が描いた猫は猫のように見えません。そもそも…

この記事では主に、WeChat パブリック アカウント開発におけるグラフィック メッセージの使用方法と、いくつかの形式のグラフィック メッセージを紹介します。タイトルは「グラフィックおよびテキスト メッセージの総合ガイド」です。これは決して見出しではありません。この機会に、グラフィックおよびテキスト メッセージに関するすべての疑問、疑問、障害を解消したいと思います。

グラフィックメッセージの主なパラメータの説明

WeChat の公式メッセージ インターフェイス ガイドを通じて、以下の図に示すように、グラフィック メッセージのパラメーターの導入を確認できます。

写真から理解できます:

1) グラフィック メッセージとテキスト メッセージの数は、画像内の ArticleCount の値である 10 に制限されます (グラフィック メッセージとテキスト メッセージの数は 10 に制限されます)。

2) 複数の画像とテキストメッセージの場合、最初の画像とテキストの画像は大きな画像として表示され、他の画像とテキストの画像は小さな画像として表示されます。

3) 最初の画像とテキストの推奨画像サイズは 640*320、他の画像とテキストの推奨画像サイズは 80*80 です。

これを理解した後、4 番目の記事で説明したメッセージのカプセル化とメッセージ処理ツールを組み合わせると、グラフィック メッセージをユーザーに返信するのは難しくありません。

グラフィックメッセージの多彩な表現

以下は、コードを介して 5 つの主要な形式のグラフィック メッセージの使用法を直接示しています。 ソース コードは次のとおりです。[java] プレーンコピーを表示  

  1. パッケージ org.liufeng.course.service;  
  2. import java.util.ArrayList;  
  3. import java.util.Date;  
  4. import java.util.List;  
  5. インポート java.util.Map;  
  6. import javax.servlet.http.HttpServletRequest;  
  7. インポート org.liufeng.course.message.resp.Article;  
  8. インポート org.liufeng.course.message.resp.NewsMessage;  
  9. import org.liufeng.course.message.resp.TextMessage;  
  10. インポート org.liufeng.course.util.MessageUtil;  
  11. /**
  12. * コアサービスカテゴリ
  13. *
  14. * @author liufeng
  15. * @日付 2013-07-25
  16. */
  17. パブリック クラス CoreService {
  18. /**
  19. * WeChat からのリクエストの処理
  20. *
  21. * @param リクエスト
  22. * @return
  23. */
  24. public static String processRequest(HttpServletRequest request) {
  25. String respMessage = null;  
  26. 試してみる {
  27. Map requestMap = MessageUtil.parseXml(request);
  28. // Sエンダーアカウント (open_id)
  29. - 文字列 fromUserName = requestMap.get("FromUserName"
  30. ); - String toUserName = requestMap.get("ToUserName")
  31. );类 息 // メッセージタイプ
  32. 文字列msgtype = requestmap.get( "msgtype");
  33. 认默 // デフォルトでは、このテキストに返信します
  34. textmessage
  35. textMessage.setToUserName(fromUserName);
  36. textMessage.setFromUserName(toUserName);
  37. textMessage.setCreateTime(new Date().getTime()); textMessage.setMsgType(MessageUtil.RESP_MESSAGE_TYPE_TEXT);
  38. textMessage.setFuncFlag(0
  39. ); ️ href 属性値は二重引用符で囲む必要があるため、文字列自体の二重引用符と競合するため、エスケープする必要があります。
  40. textMessage.setContent(
  41. "Liu Feng のブログへようこそ!"
  42. ); 本文 // テキスト メッセージ オブジェクトを XML 文字列に変換します
  43. respMessage = MessageUtil.textMessageToXml(textMessage);
  44. 用户 收 // ユーザーが送信したテキスト メッセージの内容を受信します
  45. アウトアウトアウトアウトスルーアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウトアウト アウト アウト アウト アウト 知っています ' ' 基礎発行に基づいて説明することを忘れないコンテンツ、
  46. NewsMessage newsMessage = new NewsMessage();  
  47. newsMessage.setToUserName(fromUserName);  
  48. newsMessage.setFromUserName(toUserName);  
  49. newsMessage.setCreateTime(new Date().getTime());  
  50. newsMessage.setMsgType(MessageUtil.RESP_MESSAGE_TYPE_NEWS);  
  51. newsMessage.setFuncFlag(0);  
  52. リスト& lt;記事>
  53. 記事
  54. 初心者が入門できるよう、このチュートリアル シリーズを開始しました。また、この機会を利用してより多くの仲間と知り合えることを願っています。");
  55. article.setPicUrl("http://0.xiaoqrobot.duapp.com/images/avatar_liufeng.jpg");
  56. newsMessage.setArticleCount(articleList.size( ));
  57. newsMessage.setArticles(articleList);文 图 // グラフィック メッセージ オブジェクトを XML 文字列に変換します
  58. respMessage = MessageUtil.newsMessageToXml(newsMessage);
  59. 記事
  60. 微+ ", WeChat パブリック アカウントの開発経験は 4 か月です。初心者が使い始めるのを助けるために、このシリーズのチュートリアルが開始され、この機会を利用してより多くの仲間を知りたいと思っています! NN は合計を開始しましたインターフェイス構成、メッセージのカプセル化、フレームワーク構築、QQ 絵文字送信、シンボル絵文字送信などを含む 12 のチュートリアルが含まれます。将来的には、天気予報、周囲の検索、チャットなどの実用的な機能の開発説明も導入する予定です。機能など");
  61. // 将图片を空に置きます
  62. article.setPicUrl("");  
  63. article.setUrl("http://blog.csdn.net/lyq8479");  
  64. articleList.add(article);  
  65. newsMessage.setArticleCount(articleList.size());  
  66. newsMessage.setArticles(articleList);  
  67. respMessage = MessageUtil.newsMessageToXml(newsMessage);  
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。