一个烧瓶延伸部分,为Spyne提供支撑。
Flask-Spyne的Python项目详细描述
烧瓶喷口是一个Flask延伸 提供Spyne(以前称为 soaplib)支持。 包括soap、wsdl、json、xml、yaml和其他传输和协议。 灵感来自非官方 Flask-Enterprise 扩展(位于过时soaplib之上的包装)。
服务器示例
fromflaskimportFlaskfromflask.ext.spyneimportSpynefromspyne.protocol.soapimportSoap11fromspyne.model.primitiveimportUnicode,Integerfromspyne.model.compleximportIterableapp=Flask(__name__)spyne=Spyne(app)classSomeSoapService(spyne.Service):__service_url_path__='/soap/someservice'__in_protocol__=Soap11(validator='lxml')__out_protocol__=Soap11()@spyne.srpc(Unicode,Integer,_returns=Iterable(Unicode))defecho(str,cnt):foriinrange(cnt):yieldstrif__name__=='__main__':app.run(host='127.0.0.1')
客户示例
fromsuds.clientimportClientasSudsClienturl='http://127.0.0.1:5000/soap/someservice?wsdl'client=SudsClient(url=url,cache=None)r=client.service.echo(str='hello world',cnt=3)printr
ws security
从v0.2flask开始,spyne支持soap服务的ws-security基础。
使用以下字段指定“配置”dict:
username (str, required) password (str, required) password-digest (bool, optional) nonce-freshness-time (int, optional) reject-empty-nonce-creation (bool, optional) reject-stale-tokens (bool, optional) reject-expiry-limit (int, optional)
有关详细信息,请参见examples中的server_auth.py/client_auth.py。
作者:罗伯特·艾拉佩蒂安(robert.ayrapetyan@gmail.com)。
没有版权。这项工作致力于公共领域。 有关详细信息,请参见https://creativecommons.org/publicdomain/zero/1.0/
第三方库有自己的许可证,详见其源文件。