Как вручную отправлять HTTP-запросы POST из браузера Firefox или Chrome?


1035

Я хочу протестировать некоторые URL-адреса в веб-приложении, над которым я работаю. Для этого я хотел бы вручную создавать запросы HTTP POST (то есть я могу добавлять любые параметры, которые мне нравятся).

Есть ли какие-либо расширения или функции в Chrome и / или Firefox, которые мне не хватает?


1
DHC от Restlet (доступно в Интернет-магазине Chrome) также очень полезен.
— Девеш Хандельвал

10
Сделайте AJAX-вызов в консоли Chrome. Расширение не требуется. Это хороший способ отправлять POST-запросы без необходимости получать файлы cookie для аутентификации. $.post('/resource/path/')
— FearlessFuture

11
В то время как добавление необходимо, закрытие - чепуха. Он запрашивал функциональность в Chrome или Firefox, или если ему нужен плагин. То, что для этого может потребоваться указанный или неуказанный плагин, не имеет значения
— Shayne

26
Пост закрыт некорректно. Он не просит инструмента, но для функциональности в инструментах, с которыми автор уже работает. Таким образом, мы должны закрыть все вопросы о том, как сделать то или иное на каком-либо инструменте - и это будет хорошая десятая часть SO.
— Гангнус

8
Я заметил эту функцию в Firefox, когда вы открываете вкладку сети и выбираете случайный запрос, который вы можете Edit and Resendсделать, что довольно круто.
— jurl

Ответы:


1839

Я делал приложение для Chrome под названием Postman для такого рода вещей. Все остальные расширения выглядели немного устаревшими, поэтому я сделал их самостоятельно. Он также имеет множество других функций, которые были полезны для документирования нашего собственного API здесь.


Почтальон теперь также имеет собственные приложения (то есть автономные) для Windows, Mac и Linux! Сейчас предпочтительнее использовать нативные приложения, читайте больше здесь .


1
Есть ли намерения перенести это на Firefox? (Или что-нибудь кроме хрома)
— Оли

1
Да. Это работает для локальных URL-адресов просто отлично.
— Абхинав

4
При использовании POST в Postman добавьте свои ключи и значения в тело после выбора x-www-form-urlencoded. @Abhivav Я просто хочу сказать спасибо за отличное приложение. Работает очень хорошо при тестировании RESTful.
— Дэвид

1
Убедитесь, что вы также установили плагин-перехватчик Postman, если хотите использовать куки браузера.
— GP cyborg

2
Я с удовольствием читаю этот пост спустя 9 лет и думаю, как почтальон станет неотъемлемой частью жизни разработчиков. Спасибо @Abhinav и команде за его разработку.
— Сантош К Тадка

331

CURL УДИВИТЕЛЬНО делать то, что вы хотите! Это простой, но эффективный инструмент командной строки.

Остальные реализации тестовых команд:

curl -i -X GET http://rest-api.io/items
curl -i -X GET http://rest-api.io/items/5069b47aa892630aae059584
curl -i -X DELETE http://rest-api.io/items/5069b47aa892630aae059584
curl -i -X POST -H 'Content-Type: application/json' -d '{"name": "New item", "year": "2009"}' http://rest-api.io/items
curl -i -X PUT -H 'Content-Type: application/json' -d '{"name": "Updated item", "year": "2010"}' http://rest-api.io/items/5069b47aa892630aae059584

36
Я голосую за это, хотя это неправильный ответ на вопрос: это то, что мне нужно было знать вместо этого.
— Джим Пиварски

8
Он не подходит для всей цели, потому что он не может прикрепить куки, уже установленные в браузере. Например, вы можете войти на сайт вручную, а затем отправить запрос на публикацию. С curl это было бы огромной болью, если бы вход в систему обрабатывался с помощью javascript
— Vic Seedoubleyew

Это не работает для меня, я не могу использовать одинарные кавычки на OSX с zsh и bash, оболочка переходит в quote>режим. Мне нужно использовать-d "{\"..
— Даниэль В.

193

Fire Fox

Откройте панель «Сеть» в «Инструментах разработчика», нажав Ctrl+Shift+Eили, выбрав Menubar -> Инструменты -> Веб-разработчик -> Сеть. Затем нажмите на маленький значок двери в правом верхнем углу (в развернутом виде на скриншоте вы найдете его слева от выделенных заголовков), второй ряд (если вы его не видите, перезагрузите страницу) -> Изменить и повторно отправить любой запрос, который вы хотите

Firefox Dev Tools с выделенной кнопкой «Редактировать и отправить»

Тело POST-запроса выделено


2
Эта функция нарушена для кого-то еще? При редактировании параметров в поле «Строка запроса» после изменения одного символа он отказывается изменять запрос дальше. Единственный способ сделать это помимо этого - отредактировать весь URL / запрос (что сложно, потому что все вместе)
— Coldblackice

@Coldblackice Можете ли вы опубликовать скриншот или проблемный регистратор шагов? Я могу редактировать строку запроса просто отлично. Чтобы добавить новую строку запроса, я использую & = или просто начинаю новую строку. Чтобы редактировать, измените отдельные k, v или я просто удалите и начните все сначала.
— 0

Если вам нужно поле для строки запроса ( ?key=value), где вы можете вводить пары значений ключа построчно, просто добавьте a ?и букву в URLполе вверху, и Query Stringполе отобразится.
— xuiqzy

1
это правильный ответ.
— Метехан Гюлач

162

Забудьте браузер и попробуйте CLI. HTTPie - отличный инструмент!

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

Клиенты CLI http:

Если вы настаиваете на расширении браузера, то:

Хром :

Firefox :


1
также дополнение к тесту ресурсов addons.mozilla.org/en-us/firefox/addon/http-resource-test
— akostadinov

Последнее обновление плаката 28/06/11 - обновление Firefox означает, что его нельзя запустить
— Ричард

@akostadinov Я не могу использовать аддон тестирования ресурсов в Mozilla, инструмент не отображается (даже после установки и перезапуска) под инструментами разработчика в последней версии Firefox.
— Рам

1
Только что попробовал REST Easy. Деинсталлируется на месте: интерфейс слишком сильно держит руки и заставляет пользователя использовать жесткие сценарии использования. Не подходит для разработки API.
— 7heo.tk

Перепробовал все предложенное выше для Firefox, но не нашел ничего более удобного, чем Postman для Chrome . REST Easy , кстати, не обрабатывает пустые ответы.
— Lu55

45

Будучи очень вдохновленным Postman для Chrome , я решил написать нечто подобное для Firefox.

REST Easy * - это перезапускаемое дополнение Firefox, целью которого является максимально возможный контроль над запросами. Надстройка все еще находится в экспериментальном состоянии (она еще даже не проверялась Mozilla), но разработка идет неплохо.

Проект с открытым исходным кодом, так что если кто-то чувствует себя обязанным помочь с разработкой, это было бы здорово: https://github.com/nathan-osman/Rest-Easy

* надстройка, доступная на http://addons.mozilla.org , всегда будет немного отставать от кода, доступного на GitHub


2
Кажется приятным, но не имеет возможности полностью контролировать тело запроса. В настоящее время он предлагает возможности «ключ / значение», но полный контроль над телом поста был бы неплохим.
— Галмок

Поддержка PUT и DELETE победит меня. Хорошо выглядит в противном случае.
— Деннис

1
@Pacerier: это функция, над которой я сейчас работаю, и она завершена примерно на 90%. Надеюсь, он выйдет до конца года. Похоже, существует отставание в получении аддонов, одобренных Mozilla.
— Натан Осман

2
После месяца ожидания новая версия была одобрена. Поддержка PUT и DELETE прибыла! И в этом месяце я также внес множество других новых изменений, которые скоро появятся в следующем выпуске. (Надеюсь, на этот раз он будет одобрен раньше.)
— Натан Осман

2
Это больше не доступно, как кажется. (Вероятно, это не WebExtension и, следовательно, не совместимо с Firefox> = 57.) Эта проблема отслеживается здесь: github.com/nathan-osman/REST-Easy/issues/78
— rugk

18

Вы специально задали вопрос о «расширении или функциональности в Chrome и / или Firefox», которые дают ответы, которые вы уже получили, но мне нравится простота ответа oezi на закрытый вопрос «как отправить запрос на публикацию с помощью веб-браузера» для простых параметров. Оэзи говорит:

с формой, просто установите methodдля"post"

<form action="blah.php" method="post">
  <input type="text" name="data" value="mydata" />
  <input type="submit" />
</form>

Т.е. создайте себе очень простую страницу, чтобы проверить действия поста.


16

Это немного некрасиво, но есть Simple REST Client расширение для Chrome.

Это прекрасно работает для меня - помните, что вы все еще можете использовать отладчик с ним. Панель «Сеть» особенно полезна; это даст вам отрендеренные объекты JSON и страницы ошибок.


Не думай, что это больше существует.
— Zeusstl

1
Да, ссылка больше недоступна, и новая ссылка должна быть chrome.google.com/webstore/detail/advanced-rest-client/…
— Румен Йеков,

@RumenJekov « Продвинутый REST-клиент» кажется другим продуктом (и, следовательно, другим ответом), чем « Простой REST-клиент»
— TylerH


9

Может не иметь прямого отношения к браузерам, но Fiddler - еще одно хорошее программное обеспечение.

Fiddler веб-отладчик



3

Попробуйте Runscope. Бесплатный инструмент для ознакомления с их услугами предоставляется по адресу https://www.hurl.it/ . Вы можете установить метод, аутентификацию, заголовки, параметры и тело. Ответ показывает код состояния, заголовки и тело. Тело ответа может быть отформатировано из JSON со складной иерархией. Платные учетные записи могут автоматизировать тестовые вызовы API и использовать возвращаемые данные для создания новых тестовых вызовов. Раскрытие COI: я не имею отношения к Runscope.


Существует также бесплатный уровень для Runscope, просто он имеет нижний предел запросов в месяц и только 1 член команды. Раскрытие: я делаю :-)
— Даррел Миллер

2

Проверьте http-toolна Firefox ..

https://addons.mozilla.org/en-US/firefox/addon/http-tool/

Aimed at web developers who need to debug HTTP requests and responses.
Can be extremely useful while developing REST based api.

Features:
* GET
* HEAD
* POST
* PUT
* DELETE

Add header(s) to request.
Add body content to request.

View header(s) in response.
View body content in response.
View status code of response.
View status text of response.

2
Это больше не доступно, как кажется. (Вероятно, это не WebExtension и, следовательно, не совместимо с Firefox> = 57.)
— rugk
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.