本工具用于模拟消息服务MNS通过HTTP或HTTPS请求推送主题消息,辅助客户端开发测试。

版本说明

此工具适用于2.5~3.0(包含2.5,不包含3.0)的Python版本,Windows平台和Linux平台均可使用。

更新日期 版本 功能更新
2017-05-02 Version 1.0.1
  • 推送消息格式支持JSON。
  • 修复notifymsg_withauth命令Content-MD5不正确的缺陷。
2016-04-20 Version 1.0.0
  • 支持notifymsg_withauth命令,测试客户端验权逻辑。
  • 支持notifymsg_withoutauth命令,测试客户端消息处理逻辑。

使用说明

无需安装,下载解压后,进入mns_topic_tool目录。

测试验权逻辑

发送HTTP或HTTPS请求到host参数指定的客户端,除host外,不支持指定其它参数。

  • 命令:

    python mns_topic_tool.py notifymsg_withauth --host=http(s)://xxx

  • 示例:HTTP验权

测试消息体处理逻辑

发送HTTP或HTTPS请求到host参数指定的客户端,并且可以指定消息体、消息格式等。该命令支持指定bodyformat等多个参数。

但发送的请求中不包含签名相关信息,必须注释客户端中的验权逻辑,否则会由于验权失败无法正常处理消息。

  • 命令:

    python mns_topic_tool.py notifymsg_withoutauth --host=http(s)://xxx [--uri=xxx] [--body=xxx] [--base64=true/false] [--format=xml/simplfied] [--topicowner=xxx] [--topicname=xxx] [--subscriber=xxx] [--subname=xxx] [--pubtime=xxx]

    参数说明如下表所示。

    参数 描述 默认值
    uri 请求发送的URI。 /notifications
    body 消息的内容。 TestMessage
    base64 是否对消息做Base64编码。 false
    format 请求body的格式:xml/simplfied。 xml
    topicowner 请求body(XML格式)中的TopicOwner TestTopicOwner
    topicname 请求body(XML格式)中的TopicName TestTopicName
    subscriber 请求body(XML格式)中的Subscriber TestSubscriber
    subname 请求body(XML格式)中的SubscriptionName TestSubscriptionName
    pubtime 请求body(XML格式)中的PublishTime 当前时间
  • 示例:消息体逻辑