Могу ли я написать SOAP-сервер с использованием пены Python?

Я начал использовать мыльную пену для мыльных клиентов и никогда не прикоснусь к ZSI снова.

Я знаю, что пена предназначена для клиентской стороны, но я хотел бы использовать ее также для создания серверного сайта, чтобы избавиться от ZSI.

Как я могу использовать пену для анализа запросов мыла вместо ответов?

[обновления]

  • Если вы хотите открыть какой-либо интерфейс с помощью SOAP, лучшим вариантом будет rpclib. Flask-enterprise выглядит многообещающе. Оба будут создавать WSDL из кода Python.
  • Если вместо этого вам нужно написать веб-сервис Python SOAP, придерживающийся WSDL, созданного третьей частью, пока ничто не сравнится с ZSI.

person Unpaid Oracles    schedule 14.01.2012    source источник
comment
Можете ли вы объяснить, почему вы так хотите отказаться от ZSI? Я думаю о создании системы на его основе, и я думаю, что знание вашего обоснования поможет мне сделать лучший выбор.   -  person ralien    schedule 14.03.2012
comment
Ха, я могу вспомнить предложение, подобное вашему ...never touch... предложению, которое читается как с пеной, замененной на REST, и ZSI, замененной на SOAP.   -  person orokusaki    schedule 02.11.2012


Ответы (2)


Чтобы написать SOAP-сервер на Python, вы можете использовать микро-веб-фреймворк - Flask с его плагином - Flask-enterprise

http://massive.immersedcode.org/2011/staging/projects/default/python/flask-enterprise/

Здесь, в stackoverflow, есть аналогичный вопрос:

Мыло Python с использованием soaplib (сервер) и suds (клиент)

Они используют soaplib для предоставления службы SOAP, поскольку вы можете найти документ здесь http://soaplib.github.com/soaplib/2_0/pages/helloworld.html

person Fang-Pen Lin    schedule 29.02.2012
comment
В Flask-Enterprise есть ли способ установить максимальное и минимальное количество элементов в массивах SOAP - или установить, является ли свойство сложного элемента обязательным или необязательным? - person Paulo Scardine; 02.03.2012
comment
Мой энтузиазм по поводу Flask-Enterprise довольно быстро угас. Похоже, что нет поддержки для установки минимального и максимального количества вхождений в сложных типах. - person Paulo Scardine; 05.03.2012

Если вы решили использовать Flask - попробуйте новый flask-spyne расширение.

Упомянутый выше flask-enterprise является оболочкой поверх прекращенного soaplib, а flask-spyne - это оболочка поверх spyne - преемник soaplib < / а>.

person ARA1307    schedule 13.05.2014