首页 新闻 赞助 找找看

微信开发(事件pic_photo_or_album)

0
悬赏园豆:30 [已解决问题] 解决于 2016-03-04 17:54

公众服务号中,有个菜单:夫妻相(需选择一张照片,判断2个是否具有夫妻相).已知条件如下
1,事件类型:pic_photo_or_album
2,接收到2个消息.如下图所示


现问题
1,在第1个消息中,如何获取到消息2中的PicUrl
2,第1个消息中的,PicMd5Sum如何使用?

我想实现的结果是在消息1中,能够获取到图片的Url地址.然后做些业务操作,返回给用户

斜杠青年小Q的主页 斜杠青年小Q | 初学一级 | 园豆:5
提问于:2016-03-04 16:20
< >
分享
最佳答案
0

完全看不懂你想要什么

收获园豆:30
Rich.T | 老鸟四级 |园豆:3440 | 2016-03-04 16:25

额,就是在消息1(pic_photo_or_album)中,获取到我上传的图片PicUrl地址

斜杠青年小Q | 园豆:5 (初学一级) | 2016-03-04 16:26

@Vincent.Q: 直接xml格式化成一个对象,取xml节点的值啊,你用什么语言,搜索一下你的语言怎么操作xml

Rich.T | 园豆:3440 (老鸟四级) | 2016-03-04 16:28

@Rich.T: 这是2个不同的消息.也就是说,服务器发了2个消息过来.现在不清楚这2个消息如何关联起来

斜杠青年小Q | 园豆:5 (初学一级) | 2016-03-04 16:30

@Vincent.Q: 看微信的API的接口文档

Rich.T | 园豆:3440 (老鸟四级) | 2016-03-04 16:32

@Vincent.Q: pic_photo_or_album会先推送菜单信息给你,接着推给你图片信息,你要关联消息干啥,你要取图片,直接取第二条消息就行了,如果不要菜单信息,不用理会第一条

Rich.T | 园豆:3440 (老鸟四级) | 2016-03-04 16:39

@Rich.T: 直接取第2条消息的话,是可以取到PicUrl的.问题是,我如何知道这张图片要干什么呢?

以这个为例:这张图片是在要YourMatches中操作的

斜杠青年小Q | 园豆:5 (初学一级) | 2016-03-04 16:49

@Vincent.Q: 微信端上传一张照片,就会往你的接口推送这两条信息,你收到这两条消息了,还不知道怎么处理吗?

Rich.T | 园豆:3440 (老鸟四级) | 2016-03-04 16:50

@Rich.T: 就是不知道么....不然也不会发博问了

消息2是图片信息,消息1是这张图片要干啥...

如何一块取到?

斜杠青年小Q | 园豆:5 (初学一级) | 2016-03-04 16:55

@Vincent.Q: 你现在这两个消息是分开来收到,还是一起收到?

Rich.T | 园豆:3440 (老鸟四级) | 2016-03-04 16:59

@Rich.T: 分开收到的.2个消息

消息1:

<xml>
<ToUserName><![CDATA[gh_0668e1b18251]]></ToUserName>
<FromUserName><![CDATA[o-MWejkTtShUR3RA6kPwVAE23Wuk]]></FromUserName>
<CreateTime>1456793086</CreateTime>
<MsgType><![CDATA[event]]></MsgType>
<Event><![CDATA[pic_photo_or_album]]></Event>
<EventKey><![CDATA[YourMatches]]></EventKey>
<SendPicsInfo>
<Count>1</Count>
<PicList>
<item>
<PicMd5Sum><![CDATA[f9ee9d098a804c85ad5047207b825a35]]></PicMd5Sum>
</item>
</PicList>
</SendPicsInfo>
</xml>

 

消息2:

<xml>
<ToUserName><![CDATA[gh_0668e1b18251]]></ToUserName>
<FromUserName><![CDATA[o-MWejkTtShUR3RA6kPwVAE23Wuk]]></FromUserName>
<CreateTime>1456793086</CreateTime>
<MsgType><![CDATA[image]]></MsgType>
<PicUrl><![CDATA[http://mmbiz.qpic.cn/mmbiz/b3y5eA1Gib6W5BtdwicR18VibB2W1vCLYMpSib9JScH9traqicvW1YW0ib58cNkp4icXotcs2nMUibQI4fgUWU7ehe8G0g/0]]></PicUrl>
<MsgId>6256878661810919688</MsgId>
<MediaId><![CDATA[lGreKHohDcDNaXBg1vMZQADDFxm66ln--XXhoFsQ5BXVX5vTCZeecip_XeDZ7MXj]]></MediaId>
</xml>

斜杠青年小Q | 园豆:5 (初学一级) | 2016-03-04 17:03

@Vincent.Q: 那你就先把消息1记录起来,等收到消息2了再一起处理啊,记到内存里或是数据库里都可以

Rich.T | 园豆:3440 (老鸟四级) | 2016-03-04 17:05

@Vincent.Q: 用FromUserName和CreateTime完全可以保证唯一性

Rich.T | 园豆:3440 (老鸟四级) | 2016-03-04 17:16

@Rich.T: 就是在研究这2个消息之间的关系么.

比如第1个事件消息记录下来了,过了5分钟,图片的第2个消息进来了.和第1个消息已经过了5分钟了.如何关联呢?

斜杠青年小Q | 园豆:5 (初学一级) | 2016-03-04 17:44

@Rich.T: 嗯,这2个条件应该可以的.我试下咯

斜杠青年小Q | 园豆:5 (初学一级) | 2016-03-04 17:44

@Vincent.Q: CreateTime永远不会变,别瞎鸡吧操心了,哈哈

Rich.T | 园豆:3440 (老鸟四级) | 2016-03-04 17:45

@Rich.T: 非常感谢

斜杠青年小Q | 园豆:5 (初学一级) | 2016-03-04 17:54
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册