MM-WS-ICM库:机器到机器Web服务交互命令模块(ICM)--A

unisos.mmwsIcm的Python项目详细描述


MM-WS-ICM库:机器到机器Web服务交互命令 模块(ICM)–一组用于开发执行者和调用者的工具 通过icms基于swagger(open api)规范的web服务。

Support

如需支持、批评、评论和问题,请联系 作者/维护者

Documentation

比斯塔数字生态系统的一部分。

在调用方,swagger(open api)规范被 虚张声势,并被映射到带有ICM的命令行。

在执行者方面,一个夸张的(open api)规范与 创建一致起点的代码生成器。

icm可以自动转换为web服务。

Binaries And Command-Line Examples

  • bin/rinvoker.py
    为您自己的招摇过市定制的起点模板 文件。
  • bin/rinvokerpetstore.py
    提供petstore示例命令行调用的列表。
  • bin/opscnpetstore.py
    指向petstore示例的各种场景文件。

Remote Invoker (rinvoker-svc.py) Examples

例如“宠物商店服务” http://petstore.swagger.io/v2/swagger.json在命令行(或在bash中) 您可以运行:

rinvokerPetstore.py

它将自动生成所有支持的远程 招摇过市服务规范中的质疑。

然后可以从 命令行,例如执行:

rinvokerPetstore.py --svcSpec="http://petstore.swagger.io/v2/swagger.json" --resource="pet" --opName="getPetById"  -i rinvoke petId=1

会产生如下效果:

Operation Status: 200 OK
Operation Result: {   u'category': {   u'id': 0, u'name': u'string'},
    u'id': 1,
    u'name': u'testsw',
    u'photoUrls': [u'string'],
    u'status': u'tttest',
    u'tags': [{   u'id': 0, u'name': u'string'}]}

通过将verbosity打开到级别15(rinvokerpetstore.py-v 15),您可以 观察请求库报告的完整http流量。

Operation Scenario (opScn-svc.py) Examples

例如“宠物商店服务” http://petstore.swagger.io/v2/swagger.json使用python和ro_ 抽象可以指定远程调用和期望。

要获取一些示例场景的列表,请运行:

opScnPetstore.py

要运行特定的示例场景,可以运行:

opScnPetstore.py  --load /tmp/py2v1/local/lib/python2.7/site-packages/unisos/mmwsIcm-base/opScn-1.py -i roListExpectations

会产生如下效果:

* ->:: @None@pet@getPetById
** ->:: svcSpec=http://petstore.swagger.io/v2/swagger.json
** ->:: Header Params: None
** ->:: Url Params:
{   'petId': 1}
** ->:: Body Params: None
* <-:: httpStatus=200 -- httpText=OK -- resultsFormat=json
** <-:: Operation Result:
{   u'category': {   u'id': 1, u'name': u'dog'},
    u'id': 1,
    u'name': u'Dog1',
    u'photoUrls': [],
    u'status': u'pending',
    u'tags': []}
* ==:: SUCCESS
* XX:: Sleeping For 1 Second
* ->:: @None@pet@getPetById
** ->:: svcSpec=http://petstore.swagger.io/v2/swagger.json
** ->:: Header Params: None
** ->:: Url Params:
{   'petId': 9999}
** ->:: Body Params: None
* <-:: httpStatus=200 -- httpText=OK -- resultsFormat=json
** <-:: Operation Result:
{   u'category': {   u'id': 99, u'name': u'SAGScope'},
    u'id': 9999,
    u'name': u'doggie',
    u'photoUrls': [u'string'],
    u'status': u'available',
    u'tags': [{   u'id': 99, u'name': u'SAGTags'}]}
* ==:: SUCCESS

Python Example Usage

Invoker (Client) Development

from unisos.mmwsIcm import wsInvokerIcm
from unisos.mmwsIcm import ro

Testing Framework

from unisos.mmwsIcm import wsInvokerIcm
from unisos.mmwsIcm import ro

Performer (Server) Development

from unisos.mmwsIcm import wsInvokerIcm
from unisos.mmwsIcm import ro

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java WebClient请求级别超时抛出名为default onErrorDropped的运算符   java JAXB外部绑定文件错误   Freemarker中的java转义宏参数值   java正在同步来自不同对象{已编辑}的线程   java如何在另一个类上更新活动中的元素   java Hibernate连接查询   java可以使用Apache Crunch创建类似于图形的数据结构吗?   java在JLabel的开头加上3个点   java 安卓应用程序显示线程错误   java@RequestBody在Spring中总是空的   java Android异步任务永远不会结束   具有多个属性的java Jaxws枚举   java中的安卓 Stripe InvalidRequestException   多线程java。util。非多线程程序中的ConcurrentModificationException   Minecraft Java插件如何删除HashMap中存储的所有块   空Java字符串的大小   从AJP连接器请求检索Shibboleth属性的java   oracle11g将Java类文件加载到Oracle数据库