首先,我承认我是web服务的新手,尽管我熟悉HTML和基本的web内容。我使用Python创建了一个快捷的web服务,它调用MySQL数据库中的存储过程,只返回一个BIGINT值。我想在web服务中返回这个值,并且我想生成一个可以提供给我们的web开发人员的WSDL。我可能会补充说,存储过程只返回一个值。
下面是一些示例代码:
#!/usr/bin/python
import SOAPpy
import MySQLdb
def getNEXTVAL():
cursor = db.cursor()
cursor.execute( "CALL my_stored_procedure()" ) # Returns a number
result=cursor.fetchall()
for record in result:
return record[0]
db=MySQLdb.connect(host="localhost", user="myuser", passwd="********", db="testing")
server = SOAPpy.SOAPServer(("10.1.22.29", 8080))
server.registerFunction(getNEXTVAL)
server.serve_forever()我想生成一个可以提供给web用户的WSDL,我想知道是否可以让SOAPpy为我生成一个。这个是可能的吗?
发布于 2008-11-10 03:25:12
当我去年尝试编写Python web服务时,我最终使用了ZSI-2.0 (类似于SOAPpy的继承者)和一个paper available on its web。
基本上,我是手动编写WSDL文件,然后使用ZSI内容为客户端和服务器代码生成存根。我不会将这种体验描述为愉快,但应用程序确实起作用了。
发布于 2008-11-08 04:34:27
我想生成一个WSDL,我可以将其提供给web用户,....
你可以试试soaplib。它具有按需生成WSDL的功能。
发布于 2011-12-01 10:59:54
对于几天前的问题,我很抱歉。现在我可以成功地调用服务器了。这里提供了一个demo:
def test_soappy():
"""test for SOAPpy.SOAPServer
"""
#okay
# it's good for SOAPpy.SOAPServer.
# in a method,it can have morn than 2 ws server.
server = SOAPProxy("http://localhost:8081/")
print server.sum(1,2)
print server.div(10,2)https://stackoverflow.com/questions/273002
复制相似问题