ОТДЫХ: я не понимаю - PullRequest
       8

ОТДЫХ: я не понимаю

0 голосов
/ 29 января 2012

Я пытаюсь понять и настроить службу REST, но что-то мне не понятно.

На этом сайте сказано следующее:

Давайте посмотрим, что могут означать некоторые возможные запросы: GET запрос к / api / users - список всех пользователей. ПОЛУЧИТЬ запрос к / api / users / 1 - Список информации для пользователя с идентификатором 1

Как это настроить? Является ли / api / users / 1 файлом в папке? Если нет, то как это работает? Когда я перейду к api / users / 1, я получу ошибку 404, не так ли?

[edit] Для моего приложения мне посоветовали использовать службу REST с AJAX.

Ответы [ 3 ]

1 голос
/ 29 января 2012

В этой статье предполагается, что запросы сопоставляются с веб-приложением, которое может обрабатывать URL-адреса по мере необходимости.Например, если вы используете Java (и JAX-RS), вы можете сопоставить /users с одним из ваших сервлетов, и вы получите части под-URL в качестве параметров в вашем методе обработки.Смотрите эту статью, чтобы понять суть: http://docs.oracle.com/javaee/6/tutorial/doc/gilik.html

@Path("/users/{username}")
public class UserResource {

    @GET
    @Produces("text/xml")
    public String getUser(@PathParam("username") String userName) {
        ...
    }
}
1 голос
/ 29 января 2012

Вам необходимо использовать язык на стороне сервера и веб-сервер.Это позволяет вам настраивать виртуальные папки или маршруты, которые будут отвечать на определенные запросы клиентов.В зависимости от используемой серверной платформы и языка для достижения этой цели существуют разные методы.Например, если вы используете ASP.NET MVC , вы можете настроить следующий маршрут:

routes.MapRoute(
    "Default",
    "{controller}/{action}/{id}",
    new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);

Теперь, когда вы отправите запрос на /api/users, это будет действие Usersконтроллер Api, который будет выполнен и передан в качестве параметра id null.И если вы запросите /api/users/1, это будет действие Users контроллера Api, которое будет выполнено и передано в качестве параметра id.

Ни один из файлов api, ни users фактически существует на сервере.Это механизм маршрутизации, который перехватывает запрос и отправляет его соответствующему обработчику на стороне сервера.

А вот статья , на которую вы можете взглянуть, в которой объясняется, как этого добиться с помощью PHP.

0 голосов
/ 29 января 2012

Это работает, например, с файлами .htaccess для Apache, которые переписывают и перенаправляют URl (с помощью mod_rewrite).

Проверьте mod_rewrite для получения дополнительной информации.

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