Как разработать такие операции, как:RESTful дизайн новообращенного, вычислить
- Статистика
- преобразующие
- перевод
Например: конвертирование из "евро" до "CNY" количество " 100" .
Это /convert?from=EUR&to=CNY&amount=100
RESTful?
Как разработать такие операции, как:RESTful дизайн новообращенного, вычислить
Например: конвертирование из "евро" до "CNY" количество " 100" .
Это /convert?from=EUR&to=CNY&amount=100
RESTful?
Там нет ничего в
/convert?from=EUR&to=CNY&amount=100
что не RESTful. Вы можете сказать, что это идентифицирует ресурс REST.
Но это выглядит как RPC (удаленный вызов процедур) по HTTP, который в случаях, не простых, как конвертация валют, приведет к системе, которая не является RES RES.
Всегда спрашивайте себя: какие у меня ресурсы?
Один ответ может быть: Ресурс - это конверсия результат, указанный двумя валютами и суммой. Тогда это будет выглядеть более RESTful, если вы используете
/conversion?from=EUR&to=CNY&amount=100
Обратите внимание, что путь является Nown (conversion
), а не глагол (convert
). В общем случае, если вы можете назвать ресурс REST с ожидаемым, вы на правильном пути.
Это вопрос вкуса, если вы поместите идентификационные биты в параметры запроса (?from=EUR&to=CNY&amount=100
) или на пути. Вы можете использовать
/conversion/EUR/100/CNY
с использованием трех параметров тракта:
/conversion/{FROM}/{AMOUNT}/{TO}
Ваш API выглядит хорошо для меня:
/convert?from=EUR&to=CNY&amount=100
Lutz Hom-answer также дает хорошую альтернативу.
Если API должен обрабатывать сложные или длительные операции, это может быть хорошей идеей использовать POST:
/calculate
Вы можете включить вычисление в запросе. Это избавит вас от длительных вычислений в вашем URL-адресе.
Если API должен обрабатывать простые операции, то вы можете использовать эту конструкцию:
/calculate/add/?param1=value1¶m2=value2
Аналогично для subtract
, multiply
, divide
и т.д.
/calculate/subtract
/calculate/multiply
/calculate/divide
Перевести
Для перевода , Мне нравится API-интерфейс Google Translate:
/translate/{source}/{target}/value
Здесь source
- это ваш родной язык (скажем EN) и target
- ваш целевой язык (скажем, HI).
В конце концов, ваш дизайн API подходит к вашему выбору.
«Вы можете включить расчет в запрос». Это будет RPC, а не REST. Что такое ресурс REST в этом случае? –