xml-rpc python 未显示输出
我正在尝试让一个IBM的教程示例正常工作,但到现在为止还没有成功。
服务器:
import calendar, SimpleXMLRPCServer
#The server object
class Calendar:
def getMonth(self, year, month):
return calendar.month(year, month)
def getYear(self, year):
return calendar.calendar(year)
calendar_object = Calendar()
server = SimpleXMLRPCServer.SimpleXMLRPCServer(("localhost", 8888))
server.register_instance(calendar_object)
#Go into the main listener loop
print "Listening on port 8888"
server.serve_forever()
客户端:
import xmlrpclib
server = xmlrpclib.ServerProxy("http://localhost:8888")
month = server.getMonth(2002, 8)
print month
它应该打印出一个日历,但当我运行客户端时,它只是停在那里,只打印出“正在监听8000端口”。
我使用的是python 2.7.2,但这个教程是2002年9月写的。是不是有什么语法上的差异,或者我做错了什么?
这个教程的链接在这里 http://www.ibm.com/developerworks/webservices/library/ws-pyth10/index.html
提前谢谢你们!
1 个回答
1
我猜可能有什么东西在阻止你的服务器进程使用低级的 bind
调用去连接8888端口。你可以尝试以管理员身份运行 netstat -tlp
命令。如果你不能这样做,可以用 telnet localhost 8888
来看看有没有程序在监听这个端口。