8.3.3 网页超链接的使用
公众平台的文本消息支持网页超链接,即使用HTML中的<a>标签将某些文字链接到其他网页上。例如,下面这段标准的HTML代码实现了将“当当网”3个字链接到当当网的主页,当用户点击“当当网”时,将会通过微信内置浏览器访问http://m.dangdang.com。
- 买书上<a href="http://m.dangdang.com">当当网</a>!
我们将上面这段HTML代码放到文本消息内容中,需要像下面这样写。代码中用到了转义字符“\"”,用于显示一个双引号,这样能够保证<a>标签的href属性值是用双引号引起的。
- TextMessage textMessage = new TextMessage();
- textMessage.setToUserName(fromUserName);
- textMessage.setFromUserName(toUserName);
- textMessage.setCreateTime(new Date().getTime());
- textMessage.setMsgType(MessageUtil.RESP_MESSAGE_TYPE_TEXT);
- textMessage.setContent("买书上<a href=\"http://m.dangdang.com\">当当网</a>!");
- respXml = MessageUtil.messageToXml(textMessage);
下面这两种写法都是错误的,在安卓手机上消息内容会被原样显示出来。
- // a标签的href属性值未被引号引起
- textMessage.setContent("买书上<a href=http://m.dangdang.com>当当网</a>!");
- // a标签的href属性值被单引号引起(iPhone上正常)
- textMessage.setContent("买书上<a href='http://m.dangdang.com'>当当网</a>!");
注意 由于微信的有些功能在不同的操作系统上表现不一致,因此,公众账号的测试也需要在不同操作系统的手机上进行。