Файл WSDL сервера Spyne SOAP не может показывать https

Мой Spyne сервер показывает WSDL <soap:address location="http://some-domain.com>

Я хочу это показать https вместо http,

В принципе, <soap:address location="https://some-domain.com>

Обратите внимание, что разница заключается в http а также https,

Как мне сказать моему серверу Spyne решить эту проблему?

Пересматривал документы несколько раз, но не мог понять это.

Спасибо!

2 ответа

У меня также была эта проблема из-за завершения SSL на балансировщике нагрузки.

Предполагая, что вы используете WsgiApplication, вы можете указать нужный URL-адрес через build_interface_documentметод. Что-то вроде этого из примера мыльного приложения.

      if __name__ == '__main__':
    # You can use any Wsgi server. Here, we chose
    # Python's built-in wsgi server but you're not
    # supposed to use it in production.

    from wsgiref.simple_server import make_server
    wsgi_app = WsgiApplication(application)
    wsgi_app.doc.wsdl11.build_interface_document('https://some-hardcoded-url.blah.io')
    server = make_server('0.0.0.0', 80, wsgi_app)
    server.serve_forever() 

Это задокументировано здесь, хотя я пропустил его при первом прочтении: http://spyne.io/docs/2.10/reference/server.html#module-spyne.server.wsgi

URL WSDL создается из первого запроса.

После запуска сервера запросите wsdl из защищенного домена, и он должен работать.

Другие вопросы по тегам