>  기사  >  Java  >  Java는 WeChat 공개 플랫폼 개발을 위한 그래픽 및 텍스트 코드 예제를 구현합니다.

Java는 WeChat 공개 플랫폼 개발을 위한 그래픽 및 텍스트 코드 예제를 구현합니다.

黄舟
黄舟원래의
2017-08-23 11:18:122549검색

WeChat 공개 플랫폼의 개발은 일반적으로 간단합니다. WeChat 공개 플랫폼 인터페이스 문서를 간단히 살펴보세요.

먼저 API 매뉴얼을 간단히 살펴보세요. WeChat 서버에 푸시되는 데이터에는 xml 형식과 json 형식의 두 가지 유형이 있습니다.

그럼 XML 형식은 언제인가요? JSON 형식으로?

더 이상 고민하지 않고 흐름도부터 시작하겠습니다. 사용자가 텍스트를 보내고 우리는 그래픽 메시지로 응답합니다.

(1) 이것은 수신 메시지입니다. - 응답 메시지 패턴:

2 xml 형식의 로고:

<xml>
 <ToUserName><![CDATA[toUser]]></ToUserName>
 <FromUserName><![CDATA[fromUser]]></FromUserName>
 <CreateTime>1348831860</CreateTime>
 <MsgType><![CDATA[text]]></MsgType>
 <Content><![CDATA[this is a test]]></Content>
 <MsgId>1234567890123456</MsgId>
 </xml>


3 xml 형식의 로고:

<xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[fromUser]]></FromUserName>
<CreateTime>12345678</CreateTime>
<MsgType><![CDATA[news]]></MsgType>
<ArticleCount>2</ArticleCount>
<Articles>
<item>
<Title><![CDATA[title1]]></Title> 
<Description><![CDATA[description1]]></Description>
<PicUrl><![CDATA[picurl]]></PicUrl>
<Url><![CDATA[url]]></Url>
</item>
<item>
<Title><![CDATA[title]]></Title>
<Description><![CDATA[description]]></Description>
<PicUrl><![CDATA[picurl]]></PicUrl>
<Url><![CDATA[url]]></Url>
</item>
</Articles>
</xml>==》这就说明我们想要发送图文消息出去,还要构造图文消息。需要SendMessageVo:
public class SendMessageVo {    
// 开发者微信号    
private String ToUserName;    
// 发送方帐号(一个OpenID)    
private String FromUserName;    
// 消息创建时间 (整型)    
private long CreateTime;    
// 消息类型(text/image/location/link)    
private String MsgType;    
// 图文消息个数,限制为10条以内    
private int ArticleCount;    
// 多条图文消息信息,默认第一个item为大图    
private List<ArticleVo> Articles;}
public class ArticleVo {    
// 图文消息名称    
private String Title;    
// 图文消息描述    
private String Description;    
// 图片链接,支持JPG、PNG格式,较好的效果为大图640*320,小图80*80,限制图片链接的域名需要与开发者填写的基本资料中的Url一致    
private String PicUrl;    // 点击图文消息跳转链接    
private String Url;}这些属性都是和XMl里面的元素一一对应的。通过将对象转换成xml格式,然后return就可以。
// 调用核心业务类接收消息、处理消息跟推送消息
@RequestMapping(value = "", method = RequestMethod.POST)
public void post(PrintWriter out, HttpServletRequest req, HttpServletResponse response) { 
      jsonObject str= weixinService.processRequest(req); 
      out.print(str);
}


위: 구문 분석 후 openid를 얻은 다음 자체 XML 데이터를 구성하고 이를 WeChat 서버에 반환합니다. 그러면 WeChat 서버가 사용자에게 메시지를 보냅니다. ㅋㅋㅋ 어어어어어어어 JSONObject 내부의 콘텐츠는 전송이 실패했는지 아니면 성공했는지 알 수 있습니다.

{
           "touser":"OPENID",
           "template_id":"ngqIpbwh8bUfcSsECmogfXcV14J0tQlEpBO27izEYtY",
           "url":"http://weixin.qq.com/download",  
           "miniprogram":{
             "appid":"xiaochengxuappid12345",
             "pagepath":"index?foo=bar"
           },          
           "data":{
                   "first": {
                       "value":"恭喜你购买成功!",
                       "color":"#173177"
                   },
                   "keynote1":{
                       "value":"巧克力",
                       "color":"#173177"
                   },
                   "keynote2": {
                       "value":"39.8元",
                       "color":"#173177"
                   },
                   "keynote3": {
                       "value":"2014年9月22日",
                       "color":"#173177"
                   },
                   "remark":{
                       "value":"欢迎再次购买!",
                       "color":"#173177"
                   }
           }
       }标红的是必填选项。模板的内容可以在公众号中模板的模块中查看。

SendTemplateVo 객체:

String putStr = JSONObject.toJSONString(sendTemplateVo);

위: 사실 직설적으로 말하면 객체를 직접 작성하고 그런 다음 위챗 서버에서 지정한 형식(json)으로 구성한 후, 위챗 서버에서 제공하는 URL 인터페이스를 호출하고, jsonObject가 성공적으로 반환되면 위챗 서버가 사용자에게 메시지를 보낸 것입니다.

위 내용은 Java는 WeChat 공개 플랫폼 개발을 위한 그래픽 및 텍스트 코드 예제를 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.