好吧,这是我的 Python 代码:
\n\n#!/usr/bin/env python\nfrom spyne import Application, rpc, ServiceBase, Unicode\nfrom lxml import etree\nfrom spyne.protocol.soap import Soap11\nfrom spyne.server.wsgi import WsgiApplication\n# Wsgi \xd1\x8d\xd1\x82\xd0\xbe Web server Getewap Interface - \xd1\x81\xd1\x82\xd0\xb0\xd0\xbd\xd0\xb4\xd0\xb0\xd1\x80 \xd0\xb2\xd0\xb7\xd0\xb0\xd0\xb8\xd0\xbc\xd0\xbe\xd0\xb4\xd0\xb5\xd0\xb9\xd1\x81\xd1\x82\xd0\xb2\xd0\xb8\xd1\x8f \xd1\x81 \xd0\xbf\xd0\xb8\xd1\x82\xd0\xbe\xd0\xbd \xd0\xbf\xd1\x80\xd0\xbe\xd0\xb3\xd1\x80\xd0\xb0\xd0\xbc\xd0\xbc\xd0\xbe\xd0\xb9 \xd0\xb8 \xd1\x81\xd0\xb5\xd1\x80\xd0\xb2\xd0\xb5\xd1\x80\xd0\xbe \xd0\xb3\xd0\xb4\xd0\xb5 \xd0\xbe\xd0\xbd \xd1\x80\xd0\xb0\xd0\xb1\xd0\xbe\xd1\x82\xd0\xb0\xd0\xb5\xd1\x82\n\nclass Soap(ServiceBase):\n @rpc(Unicode, _return=Unicode)\n def Insoap(ctx, words):\n print("Connection detected: ", etree.tostring(ctx.in_document))\n ww = str(words).capitalize()\n return ww\n\napp = Application([Soap], tns=\'Capitalize\', in_protocol=Soap11(validator=\'lxml\'), out_protocol=Soap11())\napplication = WsgiApplication(app) # \xd0\x92\xd0\xb0\xd0\xb6\xd0\xbd\xd0\xb0 \xd0\xbd\xd0\xb0\xd0\xb7\xd0\xb2\xd0\xb0\xd0\xbd\xd0\xb8\xd1\x8f \xd0\xbf\xd0\xb5\xd1\x80\xd0\xb5\xd0\xbc\xd0\xb5\xd0\xbd\xd0\xbd\xd0\xbe\xd0\xb9, \xd0\xb8\xd0\xbd\xd0\xb0\xd1\x87\xd0\xb5 \xd1\x81\xd0\xb5\xd1\x80\xd0\xb2\xd0\xb5\xd1\x80 \xd0\xbd\xd0\xb5 \xd0\xbf\xd0\xbe\xd0\xb9\xd0\xbc\xd0\xb5\xd1\x82\n\n\nif __name__ == \'__main__\':\n from wsgiref.simple_server import make_server\n server = make_server(\'localhost\', 8002, application)\n server.serve_forever()\nRun Code Online (Sandbox Code Playgroud)\n\n但是出现这个错误,请问是什么问题呢?我应该怎么做才能解决?请帮我解决这个问题
\n\nTraceback (most recent call last):\n File "C:/Users/David374/PycharmProjects/untitled8/venv/test.py", line 3, in <module>\n from spyne import Application, rpc, ServiceBase, Iterable, UnsignedInteger, \\\n File "C:\\Users\\David374\\PycharmProjects\\untitled8\\venv\\lib\\site-packages\\spyne\\__init__.py", line 63, in <module>\n from spyne.server import ServerBase, NullServer\n File "C:\\Users\\David374\\PycharmProjects\\untitled8\\venv\\lib\\site-packages\\spyne\\server\\__init__.py", line 23, in <module>\n from spyne.server.null import NullServer\n File "C:\\Users\\David374\\PycharmProjects\\untitled8\\venv\\lib\\site-packages\\spyne\\server\\null.py", line 69\n self.service = _FunctionProxy(self, self.app, async=False)\n ^\nSyntaxError: invalid syntax\nRun Code Online (Sandbox Code Playgroud)\n
async是 Python 3.7+ 中的保留关键字,如果您想在 Python 3.7+ 中使用它,您需要使用最新版本的 Spyne,它不使用该保留关键字作为其函数中的参数。
将 Spyne 更新为spyne-2.13.2-alpha、或使用Python 3.6或更低。
资料来源: