2013-06-19 4 views
1

Я не уверен, что это правильное место, чтобы спросить, но поскольку таких вопросов много, я буду идти вперед и спрашивать.Эта услуга Restfull?

Год назад я разработал приложение iOS, которое подключалось к серверу с HTTP-запросами, обменивающимися файлами JSON и т. Д. В то время мне говорили, что сервер был веб-службой (REST). Мне все равно, потому что для меня был просто черный ящик.

В последние месяцы я разрабатываю гибридное мобильное приложение, где я использую собственный код + jquery mobile для передней части и php + mysql для задней части. Приложение предназначено для регистрации новых пользователей в базе данных, предоставления пользователям подписки на различные виды событий, получения уведомлений на них и т. Д. Таким образом, для всей связи между фронтом (клиентом) и концом (сервером) я делаю http-запросы (POST), ajax-вызовы с использованием json-файлов.

Является ли это RESTfull Web Service? Я немного запутался в определении REST. Согласно wikipedia REST:

REST-style architectures conventionally consist of clients and servers. Clients initiate requests to servers; servers process requests and return appropriate responses. 

Так что же я создаю Restfull Web Service? Также мы называем Rest только частью сервера или вообще архитектурой клиент-сервер?

Это просто веб-сервис? И если да, то какой веб-сервис?

+0

Похоже, что вы вероятно, следуя некоторым соглашениям RESTful API, строго следуя за ним. Во-первых, вы только POST для RESTful API, когда хотите добавить новый ресурс. Похоже, вы можете использовать POST для получения записей. Для чтения ресурсов вы должны использовать GET, и обновление должно использовать PUT. Для получения дополнительной информации см. Http://stackoverflow.com/questions/671118/what-exactly-is-restful-programming. Отвечая на ваш вопрос, это веб-сервис, я бы сказал, да, со специальной реализацией, которая, вероятно, не вписывается в одну из наиболее известных категорий. – lreeder

+0

Не могли бы вы дать мне пример службы, которая является REst, а другая - нет? Я все еще не вижу разницы действительно. –

+0

RESTful API будет работать на своих объектах в качестве ресурсов, используя URI для определения этих ресурсов. Операции CRUD будут определяться HTTP-операциями GET, PUT, POST, DELETE и иногда HEAD. Одним из хорошо документированных REST API является API Amazon S3. См. Http://docs.aws.amazon.com/AmazonS3/latest/API/APIRest.html. – lreeder

ответ

0

Нет никакой разницы при вызове контроллера (aka веб-службы) из браузера через http или из кода клиента (java, .NET или любого языка). когда вы хотите вызывать сервис из внешнего мира из вашего кода .. у вас есть выбор мыла или отдыха .. soap - это протокол, где REST - это стиль архитектуры .. поэтому REST - это метод вызова сервиса (который является простым http POST или GET) из внешнего мира .. не обязательно из браузера .. он может из клиентского кода, который действует как браузер, чтобы получить ответ от внешнего мирового сервиса. Это основано на моем опыте.

Смежные вопросы