Як вручну надсилати HTTP POST-запити з браузера Firefox або Chrome?


1033

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

Чи є у Chrome та / або Firefox розширення чи функціональність, які мені відсутні?


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

10
Здійсніть дзвінок AJAX у консолі Chrome. Розширення не потрібно. Це хороший спосіб робити запити POST без необхідності захоплювати файли cookie. $.post('/resource/path/')
Безстрашний

11
У той час як необхідне додавання, близьке - це нісенітниця дурниць. Він просив функціонувати в chrome або firefox, або якщо він потребує плагіна. Те, що для цього може знадобитися вказаний або не визначений плагін, не має сенсу
Shayne

26
Пост закрито неправильно. Це не запит інструменту, а функціональність в тих інструментах, з якими вже працює автор. Таким чином, ми повинні закрити всі питання, як зробити те чи інше на якомусь інструменті - і це буде добре на десяту частину SO.
Gangnus

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

Відповіді:


1836

Я робив додаток для Chrome під назвою " Листоноша" для подібних матеріалів. Всі інші розширення здалися трохи датованими, тому я зробив своє. Він також має купу інших функцій, які були корисними для документування нашого власного API тут.


Тепер у листоноші також є власні програми (тобто автономні) для Windows, Mac та Linux! Зараз переважніше використовувати рідні програми, докладніше читайте тут .


1
Якісь наміри перенести це на Firefox? (Або що-небудь, крім хрому)
Олі,

1
Так. Він добре працює для URL-адрес localhost.
Абхінав

4
Коли ви використовуєте POST у Postman, додайте ваші ключі та значення до тіла, коли буде вибрано x-www-form-urlencoded. @Abhivav Я просто хочу сказати дякую за приголомшливий додаток. Працює дуже добре при тестуванні RESTful.
Девід

1
Не забудьте встановити плагін перехоплювача Postman, якщо ви хочете використовувати файли cookie вашого браузера, сеанс.
GP Кіборг

1
Я радий прочитати цей пост через 9 років і подумати, як листоноша стає невід’ємною частиною життя розробників. Дякуємо @Abhinav та команді за його розвиток.
Сантош К Тадка

330

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
Він не відповідає цілі цілі, оскільки він не може приєднувати файли cookie, які вже встановлені в браузері. Наприклад, ви можете ввійти на веб-сайт вручну, а потім надіслати запит на публікацію. З завитком це буде величезним болем, якщо процес входу оброблятиметься за допомогою javascript
Вік Седоблеєв,

Це не працює для мене, я не можу використовувати одиничні лапки на OSX з zsh та bash, оболонка переходить у quote>режим. Мені потрібно скористатися-d "{\"..
Daniel W.

192

Firefox

Відкрийте панель "Мережа" в Інструментах для розробників, натиснувши Ctrl+Shift+Eабо перейшовши на Menubar -> Інструменти -> Веб-розробник -> Мережа. Потім натисніть на маленьку піктограму дверей вгорі праворуч (у розгорнутій формі на скріншоті ви знайдете її ліворуч від виділених заголовків), другий ряд (якщо ви цього не бачите, перезавантажте сторінку) -> Редагувати та повторно надішліть будь-який запит

Firefox Dev Tools з кнопкою "Редагувати та повторно" виділено

Виділено тіло запиту POST


2
Ця функція порушена для когось іншого? Під час редагування параметрів у полі "Рядок запитів" після зміни одного символу він відмовляється більше змінювати запит. Єдиний спосіб зробити це за межами цього - це відредагувати всю URL-адресу / запит (що складно, оскільки все згладжено разом)
Coldblackice

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

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

1
це правильна відповідь.
Метехан Гюлаш

162

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

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

Клієнти CLI http:

Якщо ви наполягаєте на розширенні браузера, тоді:

Chrome :

Firefox :


1
також випробування ресурсів addon 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
Здається приємно, але не має можливості повноцінно контролювати орган запиту. Наразі він пропонує ключові / ціннісні здібності, але повний контроль над поштовим органом було б непогано.
galmok

Підтримка PUT і DELETE перемогла б мене. Добре виглядає інакше.
Денніс

1
@Pacerier: це функція, над якою я зараз працюю, і майже 90% завершена. Сподіваємось, він вийде до кінця року. Здається, є відставання, що отримує доповнення, затверджені Mozilla.
Натан Осман

2
Після місяця очікування нова версія була затверджена. Підтримка PUT і DELETE надійшла! І в тому місяці я також внесла багато інших змін, які незабаром з’являться в наступному випуску. (Сподіваємось, що цього разу воно буде схвалено.)
Натан Осман

2
Це більше не доступно, як здається. (Ймовірно, це не WebExtension і тому не сумісний з Firefox> = 57.) Ця проблема відслідковується тут: github.com/nathan-osman/REST-Easy/isissue/78
rugk

18

Ви спеціально попросили "розширення чи функціональність у Chrome та / або Firefox", які вже отримані відповіді, але мені подобається простота відповіді oezi на закрите запитання "як надіслати запит на пошту за допомогою веб-браузера" для простих параметрів. oezi каже:

з формою, щойно встановлена methodна"post"

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

Тобто створити собі дуже просту сторінку, щоб перевірити дії публікації.


16

Це трохи некрасиво, але є розширення клієнта Simple REST для Chrome.

Для мене це чудово працює - пам’ятайте, що ви ще можете використовувати налагоджувач з ним. Панель мережі є особливо корисною; це дасть вам відображені об’єкти JSON та сторінки помилок.


Не думайте, що це вже існує.
zeusstl

1
Так, посилання більше не доступне, і нове посилання має бути chrome.google.com/webstore/detail/advanced-rest-client/…
Румен Єков

@RumenJekov " Розширений клієнт REST" здається іншим продуктом (і, отже, іншою відповіддю), ніж " Простий клієнт REST"
TylerH



3

Ви також можете використовувати Watir або Watin для автоматизації браузерів. Watir написаний для рубіну, а Watin - для мов .Net. Не впевнений, чи це те, що ви шукаєте, хоча.


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.