Веб-дизайн API: Форма POST'ing пары ключ-значение: стиль JSON или флажок? - PullRequest
0 голосов
/ 07 января 2010

Вопрос разработки для API RESTful: один из входных параметров для моего API (то есть данные, отправляемые с клиента на мой API) - это словарь (пары хэш / ключ-значение). Каков наилучший способ закодировать это так, чтобы API можно было легко вызывать из веб-страниц, а также из скриптов / языков программирования?

Моей первой мыслью было json кодировать объект, примерно так:

var data = {a:'one', b:'two'};
form_paramter_x = JSON.stringify(data);

и декодировать на сервере:

data = simplejson.loads( request.POST['form_paramter_x'] )

Альтернативой может быть кодирование в виде пар ключ-значение в стиле html-form-checkbox:

form_param_x=a:one&form_param_x=b:two

Последняя альтернатива потребует специального анализа ключа и значения (часть «a: one») и, как правило, выглядит менее чистой, но также кажется более близкой к базовой HTML-форме, что, вероятно, является хорошей вещью.

Что из этого чище? Или есть другая лучшая альтернатива?

1 Ответ

1 голос
/ 07 января 2010

Если вы разрабатываете свой API для использования другими сторонами, я бы подумал, что будет проще для них кодировать. JSON широко поддерживается в наши дни, так что это не нарушает договоренности. В конце концов, я бы сказал, что вашим клиентам проще писать код. Эмоционально я склоняюсь к кодировке JSON.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...