Мне нужно получить данные из веб-службы RESTful, используя jquery - PullRequest
3 голосов
/ 16 февраля 2012

Я новичок в этом RESTful веб-сервисе, поэтому я спрашиваю, можете ли вы помочь мне с этим.

Мне нужно получить данные из спокойного веб-сервиса, используя jquery.теперь я знаю, что могу сделать это, используя $ .ajax или $ .getJSON, но вопрос в том, как я могу это сделать, если моему отдыхающему веб-сервису нужно ввести имя пользователя и пароль для получения данных.Спасибо

Ответы [ 4 ]

2 голосов
/ 16 февраля 2012

Зависит от того, как ваш веб-сервис выполняет аутентификацию.

Если он основан на токене (с помощью файлов cookie или чего-либо другого), вам нужно будет вызвать метод входа в свою службу, получить токен (или файл cookie и т. Д.) И отправить этот токен с вашими будущими запросами.

Другие методы требуют других корректировок; заголовки аутентификации и т. д. Мы не можем сказать вам, что вам нужно, если не знаем, какой метод аутентификации использует сервис.

1 голос
/ 16 февраля 2012

В идеале у вас должен быть какой-то ключ API или ключ сеанса.

В противном случае вы можете просто передать их в качестве параметров в вызове.Просто Рене, что они больше не в безопасности.

1 голос
/ 16 февраля 2012

Вы можете использовать более сложную, но более универсальную функцию ajax (), которая принимает имя пользователя и пароль в качестве параметров.Однако обратите внимание, что ваши пользователи смогут видеть имя пользователя и пароль в источнике, а также в запросе, что может поставить под угрозу безопасность вашей учетной записи.

1 голос
/ 16 февраля 2012

Если вам нужно перейти на страницу и ввести имя пользователя и пароль, прежде чем вы сможете получить свои данные, то это не сработает. Это не услуга вообще, если это так. Не каждая страница может быть вызвана через AJAX; обычно они не могут, если не спроектированы с учетом AJAX. «REST» не означает, что вы можете эффективно вызывать любую существующую страницу через AJAX. Это сервис, который использует для связи стандартные URI и HTTP, а не SOAP и т. Д. (Это огромное упрощение, но не плохое для начала.)

Вы контролируете эту "услугу"? Если это так, вы могли бы:

  • переписать его так, чтобы он принимал имя пользователя / пароль в качестве параметров строки запроса. Или
  • при условии, что он находится на том же сайте, откуда пришла страница, на которой находится AJAX, можете ли вы сохранить учетные данные пользователя в файле cookie? Во многих фреймворках (в моем случае .NET) фреймворк помогает вам сделать это, и это относительно просто. На сайте, который я только что развернул, повсюду есть REST AJAX, и я ничего не делаю с логином / паролем. Просто по возможности обращайтесь с этим заранее.

Кстати, вы используете SSL? (То есть сайт, на который вы идете, ajax или иным образом, начинается с https?)

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