Написание клиента для RESTful (гипермедиа) API

Я читаю о «настоящих» RESTful API уже несколько дней, и я думаюЯ близок к тому, чтобы понять, о чем речь.

Но одна вещь, на которую я натыкаюсь, заключается в том, что я даже не могу представить, как можно написать клиент для «настоящего» API гипермедиа:

  1. Большинство примеров, которые я читал, говорят о браузерах. и пауки, но это не особенно полезно: один ориентирован на человека и «умный», другой — тупой и «случайный». В нынешнем виде у меня складывается впечатление, что вам нужно изучить ИИ, чтобы клиент работал.

  2. Одна вещь, которая мне не ясна, это то, как клиент узнает, какой глагол использовать в той или иной ссылке? Это подразумевается в типе rel uri? Альтернатива (читая здесь ), похоже, использует xhtml и имеет клиент, который может анализировать и публиковать формы.

  3. Насколько вероятно, что изменится ссылка, но не маршрут к ссылке? В большинстве примеров, которые вы видите, маршрут и ссылка одинаковы:

например. если я хочу настроить клиент, который будет возвращать мне список пирожных из кондитерской Тони:

http://tonis.com
{ link: { type : "cakes" ; uri : "http://tonis.com/cakes" } }

Что произойдет, когда Toni's станет магазином Toni's Food Shop, а ссылка станет http://tonis.com/desserts /торты?

Оставляем ли мы исходную ссылку cakesв корне для обратной совместимости? А если нет, то как нам сделать «перенаправление» для бедного маленького агента, которому сказали «иди в корень, ищи пирожные»?

Что я упускаю?

11
задан Benjol 9 March 2012 в 12:54
поделиться