0

spyne.ioの例から:

class HelloWorldService(ServiceBase):
    @srpc(Unicode, Integer, _returns=Iterable(Unicode))
    def say_hello(name, times):
        for i in range(times):
            yield 'Hello, %s' % name

application = Application([HelloWorldService],
    tns='spyne.examples.hello',
    in_protocol=JsonDocument(validator='soft'),
    out_protocol=JsonDocument()
)

これは、呼び出されたメソッド名が JSON 本体の唯一のキーでなければならないことを意味します。

$ curl -s http://localhost:8000/ -d '{"say_hello": {"name": "World", "times": 5}}'

本文にメソッド名を含めないようにしたいのですが、メソッド名は HttpRpc の場合と同じように URL から取得します。

$ curl -s http://localhost:8000/say_hello -d '{"name": "World", "times": 5}'

このようなリクエストを処理できるようにサービスを定義するにはどうすればよいですか?

4

1 に答える 1