Как протестировать REST API с помощью расширения Chrome "Advanced Rest Client"

Следуя инструкциям по ссылке ниже, я успешно построил REST API для своего приложения Django: http://django-rest-framework.org/tutorial/quickstart.

Я могу проверить его, выполнив следующее из приглашения Unix:

curl -H 'Accept: application/json; indent=4' -u root:myPassword http://www.myWebsite.com/users/

Работает:)

Тем не менее, я хотел бы использовать расширенный клиент Chrome Rest Client для тестирования этой же функциональности. Я установил расширение, но я не знаю, где/как поставить поля. Когда я делаю свою образованную догадку (как вы можете видеть на скриншоте), она отвергает ее: "Учетные данные аутентификации не были предоставлены"

screenshot of failing request

Как/где я должен указывать свои параметры в REST API?

Ответ 1

Обнаружение является мрачным, но довольно разумно, как Advanced Rest Client обрабатывает базовую аутентификацию. Ярлык, на который ссылается абрахам, не работал у меня, но немного засунувшись, показал, как он это делает.

Первое, что вам нужно сделать, это добавить заголовок Authorization: menus

Затем появляется маленькая мелочь, когда вы фокусируете вход value (обратите внимание на поле "конструкция" в правом нижнем углу): construct the auth value

Нажатие на него откроет окно. Он даже делает OAuth, если хотите! convenient inputs

Тада! Если вы оставите поле значения пустым, когда вы нажмете "построить", он добавит к нему часть Basic (я предполагаю, что он также добавит необходимый материал OAuth, но я не пробовал это, поскольку мои текущие потребности были для базовой аутентификации), поэтому вам не нужно ничего делать. fills in the field as needed

Ответ 2

На скриншоте я вижу, что вы хотите передать значения "пользователь" и "пароль" в службу. Вы отправили значения параметров в части заголовка запроса, которая неверна. Значения отправляются в тело запроса, а не в заголовке запроса. Также ваш синтаксис неверен. Правильный синтаксис: {"user":"user_val","password":"password_val"}. Также проверьте, какой тип содержимого. Он должен соответствовать типу контента, установленному для вашей службы.

Ответ 3

Это кажется очень старым вопросом, но я предоставляю ответ, чтобы он мог помочь другим. Вы можете указать переменные на втором экране в разделе формы, как показано ниже или в RAW, добавив переменные, как показано на втором изображении.

Specify Form Variables

Specify in RAW format

Если значения переменной и переменной действительны, вы должны увидеть успешный ответ в разделе ответа.

Ответ 4

Формат ярлыка, обычно используемый для базового auth, http://username:[email protected]/path. Вы также захотите включить заголовок accept в запрос.

enter image description here

Ответ 5

в разделе заголовка вы должны написать

Авторизация: Basic aG9sY67890vbGNpbQ ==

где string after basic - это 64-битное значение кодировки вашего имени пользователя: пароль. php-пример получения значений заголовка: эхо "Авторизация: основное". base64_encode ( "MyUser: MyPassword" );

n.b: Я предположил, что ваш метод аутентификации является основным. которые могут быть разными.

Ответ 6

Добавьте заголовок авторизации и нажмите кнопку карандаша, чтобы ввести имя пользователя и пароль

введите описание изображения здесь

Ответ 7

Простой способ решить эту проблему аутентификации - это украсть токен аутентификации с помощью Fiddler.

Шаги

  • Запустите скрипач и браузер.
  • Перейдите в браузер, чтобы открыть веб-приложение (веб-сайт), и выполните требуемая аутентификация.
  • Откройте Fiddler и нажмите на запрос HTTP-страницы HTTP 200. Захват значения cookie с помощью Fiddler
  • На правой панели, из заголовков запроса, скопируйте заголовок cookie значение параметра. введите описание изображения здесь
  • Откройте клиент REST и нажмите на вкладку "Форма заголовка" и предоставьте cookie с клипа.

Нажмите кнопку SEND, и она должна получить результаты.

Ответ 8

С последним ARC для запроса GET с аутентификацией необходимо добавить исходный заголовок с именем Authorization: authtoken.

Найдите снимок экрана Получить запрос с параметрами проверки подлинности и запроса

Чтобы добавить параметр запроса, нажмите на стрелку вниз в левой части окна URL.

Ответ 9

Клиент Restlet - самый популярный клиент, доступный как расширение Chrome. If предоставляет элегантный интерфейс для создания и выполнения как отдельных API-запросов, так и сложных сценариев. Проверьте здесь для более подробной информации.