Заставьте плагин JSON-RPC jQuery работать с GAE ProtoRPC

Я пытаюсь заставить эти две библиотеки работать вместе. Но я не уверен, что они могут подключиться из коробки. Перед использованием плагина JSON-RPC я успешно справился со стандартной функциональностью $.ajax. Не могли бы вы дать мне краткий пример того, как должна выглядеть функция на стороне клиента, и точку входа для нее на стороне GAE.

Или, может быть, должна быть создана специальная библиотека ProtoRPC jQuery, чтобы упростить эту работу?

домашняя страница подключаемого модуля JSON-RPC


person Sergei Basharov    schedule 29.04.2011    source источник


Ответы (3)


ProtoRPC не использует формат сообщений JSON-RPC. Он использует более простой формат, в котором каждый метод API предоставляет свою собственную конечную точку, а не одну конечную точку, которая принимает имя метода как часть словаря запросов.

Вот пример, который они предоставляют для $.ajax:

$.ajax({url: '/hello.hello',
          type: 'POST',
          contentType: 'application/json',
          data: '{ my_name: Bob }',
          dataType: 'json',
          success: function(response) {
            // The response is { hello: "Hello there, Bob!" }
            alert(response.hello);
          }
         });

Вам действительно нужна для этого специальная библиотека jQuery? Я не уверен, что это может быть намного проще.

person Drew Sears    schedule 29.04.2011
comment
Да, я читал об этом больше, и кажется, что на самом деле библиотека не нужна. Это уже совсем просто. Спасибо. - person Sergei Basharov; 29.04.2011

Нам определенно нужно разработать библиотеку protorpc общего назначения для пользователей. После этого лучше всего будет написать jquery-плагин, который с ним работает.

На самом деле я думал о том, чтобы ProtoRPC мог поддерживать JSON-RPC как отдельный протокол, однако в JSON-RPC могут быть некоторые особенности, которые делают его несовместимым с ProtoRPC. Две вещи:

  • Запросы JSON допускают список произвольных типов в своих параметрах. ProtoRPC использует один четко определенный тип.

  • Поля и списки JSON могут содержать произвольные типы. Поля и списки ProtoRPC могут содержать только один тип.

Хотел бы я иметь лучший ответ для вас.

person Rafe Kaplan    schedule 29.04.2011