Python xml-rpc не печатает вывод
Я пытаюсь заставить пример учебника 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 года. Есть какая-то разница в синтаксисе или я делаю что-то не так.
Сам учебник находится здесь http://www.ibm.com/developerworks/webservices/library/ws-pyth10/index.html
Заранее спасибо!
1 ответ
Решение
Я думаю, что что-то блокирует низкий уровень bind
вызовите порт 8888 в вашем серверном процессе. Бежать netstat -tlp
как root, если можете. Если не можете, используйте telnet localhost 8888
чтобы увидеть, что если что-то слушает.