Вызов функции GWT RPC из Python-mechanize - PullRequest
0 голосов
/ 30 июля 2011

Я получаю 500: Внутренняя ошибка, полезная нагрузка POST определенно правильно, я заметил одну вещь, что Content-Type не «залипает» при использовании b.addheaders = [('Content-Type',"text-x-gwt-rpc")] - и я ' Я не уверен, почему.

Есть ли у кого-нибудь быстрый / грязный код, используемый для доступа к GWT RPC (т.е. эмулировать клиента GWT) в Python с использованием mechanize? Браузер

Ответы [ 2 ]

0 голосов
/ 30 июля 2011

Ответ на вопрос: GWT требует, чтобы тип контента был x-gwt-rpc; вместо 'application / x-www-form-urlencoded'; который жестко запрограммирован в _http.py в библиотеке механизации.

Быстрый и грязный взлом, чтобы изменить это на text / x-gwt-rpc; charset = UTF-8 - я уверен, что это можно сделать лучше, если создать подкласс класса AbstractHTTPHandler; может быть, кто-то другой мог бы предложить быстрый способ сделать это.

0 голосов
/ 30 июля 2011

Не используйте GWT-RPC из решений сторонних производителей, формат является внутренним и может быть изменен без уведомления. Подумайте о том, чтобы ВОССТАНОВИТЬ приложение (или использовать SOAP и повторно использовать существующий код методов, но необходимо уделить внимание определениям интерфейса).

...