haigerrr 2017-04-14 07:18 采纳率: 50%
浏览 723

关于微信服务器返回xml的问题,

 请求表单数据:
<xml>
<ToUserName>#微信号</ToUserName> 
<FromUserName>#微信号</FromUserName> 
<CreateTime>1492150949</CreateTime>
<MsgType><![CDATA[text]]></MsgType> 
<Content><![CDATA[1]]></Content> 
<MsgId>6408739527091614041</MsgId>
</xml>

被动回复内容
<xml>
<FromUserName>#微信号</FromUserName> 
<CreateTime>1492150938649</CreateTime> 
<MsgType>text</MsgType> 
<Content>本平台XXXXXX</Content> 
</xml>

为什么返回内容没有toUserName呢,
servlet代码如下:

 public static String initText(String toUserName, String fromUserName,
            String content) {

        TestMessage text = new TestMessage();
        text.setFromUserName(toUserName);
        text.setToUserName(fromUserName);
        text.setMsgType(MESSAGE_TEXT);
        text.setCreateTime(new Date().getTime());
        text.setContent(content);
        return textMessageToXml(text);
    }

  • 写回答

1条回答 默认 最新

  • 山外有山a 2024-03-07 15:59
    关注

    根据你提供的代码和XML内容,我注意到在你的被动回复内容中确实没有包含 标签。这可能是因为在 initText 方法中,你错误地将 toUserName 和 fromUserName 互换了。

    在你的 initText 方法中,应该将 toUserName 赋值给 text.setToUserName(fromUserName),而将 fromUserName 赋值给 text.setFromUserName(toUserName)。这样才能正确地设置被动回复消息的发送者和接收者信息。

    修改后的代码应该如下所示:

    java
    public static String initText(String toUserName, String fromUserName, String content) {
        TestMessage text = new TestMessage();
        text.setFromUserName(fromUserName); // 将 fromUserName 赋值给消息的发送者
        text.setToUserName(toUserName); // 将 toUserName 赋值给消息的接收者
        text.setMsgType(MESSAGE_TEXT);
        text.setCreateTime(new Date().getTime());
        text.setContent(content);
        return textMessageToXml(text);
    }
    
    

    通过以上修改,你应该能够正确地生成包含 的被动回复内容了。希望这能帮助到你解决问题!

    评论

报告相同问题?

悬赏问题

  • ¥15 交替优化波束形成和ris反射角使保密速率最大化
  • ¥15 树莓派与pix飞控通信
  • ¥15 自动转发微信群信息到另外一个微信群
  • ¥15 outlook无法配置成功
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程