zoukankan      html  css  js  c++  java
  • python 訪问webservice

    <span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">如今最流行的就是suds了,可是里面仍然有很多bug未修复。也好像没有人更新了</span>

    import sys
    from suds.client import Client
    
    sys.setrecursionlimit(1500)
    
    test_url = 'http://webservices.amazon.com/AWSECommerceService/AWSECommerceService.wsdl'
    url = 'http://localhost/IdentifierService.svc?

    wsdl' client = Client(url, cache=None)

    suds确实简单易用

    可是执行后有错误,其它的wsdl地址却没有问题

    google中还发现suds与.net平台似乎有一点的不兼容

    而这个wsdl就是.net平台的,万恶的.net

    不能说常见吧,可是我第一次用就碰到了 runtimeerror: maximum recursion depth exceeded

    意思就是递归过深,python默认的递归深度是1000

    你能够通过改动深度值,可是无济于事

    import sys

    sys.setrecursionlimit(1500)


    最后仅仅好换工具。用了SOAPy,SOAPpy,pysimplesoap,soaplib真是快用一遍了

    最后仅仅有ZSI可用

    from ZSI import ServiceProxy
    url = 'http://localhost/IdentifierService.svc?wsdl'
    
    proxy = ServiceProxy.ServiceProxy(url)#是两个ServiceProxy
    person = "{
        'IDNumber': '4123412412423',
        'Name': '张三'
    }"
    
    account = "{
        'UserName': 'admin',
        'Password': '123456'
    }"
    response = proxy.ExactCheckByJson(request=person, cred=account)
    当中ExactCheckJson是webservice提供的服务

    并且參数必须是这个形式的,假设直接上參数,就会报ypeError: Not supporting SOAPENC:Arrays or XSD:List的错误

    然后我的request跟cred是借口文档提供的。还不能变~


  • 相关阅读:
    iphone合并.a文件,制作通用静态库
    iphone技巧3
    在windows下安装collabnet subversion server 1.6.5 正确
    iphone技巧2
    iPhone开源库
    盗链,可耻啊
    Jquery ajax 缓存
    js调用服务器端按钮的事件
    电脑删除文件很慢怎么回事?
    解决'System.OutOfMemoryException' 的问题
  • 原文地址:https://www.cnblogs.com/yutingliuyl/p/6715660.html
Copyright © 2011-2022 走看看