Я относительно новичок в разработке API. Я часто сталкиваюсь с разными проблемами и у меня много вопросов. Главный вопрос: «Как реализовать что-то в соответствии с лучшими практиками и шаблонами».
Моя цель состоит не только в том, чтобы писать API и забывать об этом, но и поддерживать и упрощать его использование для других.REST API и статические страницы (лучшее решение)
Теперь у меня есть вопрос о статических страницах и ответ JSON
.
На моем сайте у меня есть некоторое количество статических страниц (About Us, Contact Us, Shipping, Payment......
), поэтому страницы со статическим контекстом, по существу, являются html и изображениями.
Поэтому мне нужно иметь эти страницы в своем приложении (в данном случае Android Standalone App) как часть приложения, но они не должны быть жестко запрограммированы, а они будут загружены с сайта с использованием API, чтобы они обновлялись.
У меня есть несколько вопросов:
Как URL должен выглядеть, это должно быть какое-то количество постоянных URL (
http://supersite.com/api/aboutus,http://supersite.com/api/contactus
...). Или это должно выглядеть какhttp://supersite.com/api/articles/42
?Как должна выглядеть структура ответа
JSON
. Проблема здесь в том, что содержание статических страниц совсем другое, например, на страницеContact Us
будет такая важная информация: номера телефонов, электронные письма и могут быть независимыми свойствами в ответеJSON
.About Us
страница есть другой главный части. И таких страниц может быть много. Как сохранить это унифицированное?Возможно, лучше объединить ответы JSON только в свойствах сервера (краткое описание, полный текст, изображение ...) и отправить сырой текст или даже html и работать на клиенте. Но, похоже, это не очень хорошая идея.
Возможно, есть и другой правильный способ реализации этого. Или он не является частью API вообще и должен быть выполнен по-другому.
Буду благодарен всем, спасибо за помощь заранее.
Это слишком широкий вопрос, чтобы даже начать отвечать, поэтому я голосую, чтобы закрыть. Но вот несколько советов, которые помогут вам начать работу: не стремитесь к совершенству, тем более, что вы новичок. Начните работать над своим проектом с учетом разделения проблем и других принципов SOLID, но опять же, старайтесь не делать это в абсолютах. Отказы в этом процессе будут намного лучше, чем получить его в первый раз.Что касается REST ... да. Корневой URL должен быть маневренным, но фактические вызовы CRUD и GET должны соответствовать конвенции RESTful. –
Благодарим за ответ. Есть ли хорошие статьи или реальные примеры хорошо построенных API? – CROSP
См. Http://apigee.com/about/resources/ebooks/web-api-design – jrc