Передача **kwargs от Flex через PyAMF

Кто-нибудь знает, если это легко можно отправить **kwargs через PyAMF от NetConnection.call()? Я хотел бы это.

Я мог бы написать обертку вокруг фактической функции, выставить ее и выполнить ручной анализ, чтобы определить, какие kwargs нужно передать, но я не хочу этого делать. Я просто буду использовать обычный список аргументов в этом случае.

1 ответ

Решение

В то время как ActionScript имеет *args построить (params ...) нет эквивалента **kwargs, хотя если вам нужно отправить произвольные именованные аргументы, вы всегда можете отправить dict в качестве позиционного аргумента службе. Например

def some_service_function(kwargs): # <- note the lack of **
    foo = kwargs.get('foo')
    bar = kwargs.get('bar')

И вызывающий ActionScript:

nc.call("some_service_function", {foo: "some", bar: "thing"})
Другие вопросы по тегам