Jak ręcznie wysyłać żądania HTTP POST z przeglądarki Firefox lub Chrome?

1033

Chcę przetestować niektóre adresy URL w aplikacji internetowej, nad którą pracuję. W tym celu chciałbym ręcznie utworzyć żądania HTTP POST (co oznacza, że ​​mogę dodać dowolne parametry, które lubię).

Czy brakuje jakiegoś rozszerzenia lub funkcji w Chrome i / lub Firefox?

Pascal Klein
źródło
1
DHC by Restlet (dostępny w Chrome Webstore) jest również bardzo przydatny.
Devesh Khandelwal,
10
Wykonaj połączenie AJAX w konsoli Chrome. Nie wymaga rozszerzenia. Jest to dobry sposób na składanie żądań POST bez konieczności pobierania uwierzytelniających plików cookie. $.post('/resource/path/')
FearlessFuture,
11
Podczas gdy dodatek jest konieczny, zamknięcie to bzdury. Pytał o funkcjonalność w chrome lub firefox, lub jeśli potrzebuje wtyczki. To, że może wymagać określonej lub nieokreślonej wtyczki, nie ma sensu
Shayne
26
Wpis został nieprawidłowo zamknięty. Nie prosi o narzędzie, ale o funkcjonalność w narzędziach, z którymi autor już pracuje. W ten sposób musimy zamknąć wszystkie pytania dotyczące tego czy to zrobić na jakimś narzędziu - i będzie to dziesiąta część SO.
Gangnus,
8
Zauważyłem tę funkcję w przeglądarce Firefox, gdy otwierasz kartę sieciową i wybierasz losowe żądanie, Edit and Resendktóre jest całkiem fajne.
jurl

Odpowiedzi:

1836

Tworzę aplikację Chrome o nazwie Postman do tego typu rzeczy. Wszystkie pozostałe rozszerzenia wydawały się trochę przestarzałe, więc stworzyłem własne. Posiada również szereg innych funkcji, które były pomocne w dokumentowaniu naszego API tutaj.


Listonosz ma teraz także natywne aplikacje (tj. Autonomiczne) dla systemów Windows, Mac i Linux! Bardziej preferowane jest teraz używanie aplikacji natywnych, więcej informacji tutaj .

Abhinav
źródło
1
Jakieś zamiary przeniesienia tego do Firefoksa? (Lub cokolwiek innego niż chrom)
Oli
1
Tak. Działa dobrze dla adresów URL localhost.
Abhinav
4
Podczas korzystania z POST w Listonoszu dodaj swoje klucze i wartości do treści po wybraniu x-www-form-urlencoded. @Abhivav Chcę tylko podziękować za wspaniałą aplikację. Działa naprawdę dobrze podczas testowania RESTful.
David,
1
Zainstaluj także wtyczkę przechwytującą Postman, jeśli chcesz korzystać z plików cookie przeglądarki, sesji.
GP cyborg
1
Z przyjemnością czytam ten post po 9 latach i zastanawiam się, w jaki sposób listonosz stał się integralną częścią życia programistów. Dzięki @Abhinav i zespół za opracowanie.
Santhosh K Thadka
330

CURL NIESAMOWITE robi to, co chcesz! Jest to proste, ale skuteczne narzędzie wiersza poleceń.

Reszta komend testu implementacji:

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
Arno 2501
źródło
36
Głosuję za tym, mimo że jest to zła odpowiedź na pytanie: to właśnie musiałem wiedzieć.
Jim Pivarski
8
To nie pasuje do całego celu, ponieważ nie może dołączać plików cookie już ustawionych w przeglądarce. Na przykład możesz ręcznie zalogować się na stronie internetowej, a następnie wysłać żądanie postu. Z zawinięciem byłby ogromny ból, gdyby proces logowania był obsługiwany za pomocą skryptów javascript
Vic Seedoubleyew
To nie działa dla mnie, nie mogę używać pojedynczych cudzysłowów w OSX z zsh i bash, shell przechodzi w quote>tryb. Muszę użyć-d "{\"..
Daniel W.
192

Firefox

Otwórz panel Sieć w Narzędziach programisty, naciskając Ctrl+Shift+Elub przechodząc do paska menu -> Narzędzia -> Web Developer -> Sieć. Następnie kliknij ikonę małych drzwi w prawym górnym rogu (w rozwiniętej formie na zrzucie ekranu, znajdziesz ją na lewo od podświetlonych Nagłówków), drugi rząd (jeśli nie widzisz, przeładuj stronę) -> Edytuj i ponownie wyślij dowolne żądanie

Narzędzia deweloperskie Firefox z podświetlonym przyciskiem „Edytuj i wysyłaj ponownie”

Podkreślono treść żądania POST

0fnt
źródło
2
Czy ta funkcja jest zepsuta dla kogokolwiek innego? Podczas edycji parametrów w polu „Ciąg zapytania” po zmianie pojedynczego znaku odmawia dalszej zmiany żądania. Jedynym sposobem, aby to zrobić poza tym, jest edycja całego adresu URL / żądania (co jest trudne, ponieważ wszystko jest wygładzone razem)
Coldblackice
@Coldblackice Czy możesz zamieścić zrzut ekranu lub rejestrator problemów? Mogę dobrze edytować ciąg zapytania. Aby dodać nowy ciąg zapytania, używam & = lub po prostu rozpoczynam nowy wiersz. Aby edytować, zmień poszczególne k, v lub I, po prostu usuń i zacznij od nowa.
0nt
Jeśli potrzebujesz pola dla ciągu zapytania ( ?key=value), w którym możesz wprowadzać pary klucz-wartość linia po linii, po prostu dodaj a ?i literę do URLpola u góry, a Query Stringpole pojawi się.
xuiqzy
1
to właściwa odpowiedź.
Metehan Gülaç
162

Zapomnij o przeglądarce i wypróbuj CLI. HTTPie to świetne narzędzie!

wprowadź opis zdjęcia tutaj

Klienci HTTP CLI :

Jeśli nalegasz na rozszerzenie przeglądarki:

Chrome :

Firefox :

amra
źródło
1
także test zasobów addon addons.mozilla.org/en-us/firefox/addon/http-resource-test
akostadinov
Ostatnia aktualizacja plakatu 28/06/11 - aktualizacje przeglądarki Firefox oznaczają, że nie ma możliwości jej uruchomienia
Richard
@akostadinov Nie mogę korzystać z dodatku do testu zasobów w Mozilli, narzędzie to nie pojawia się (nawet po instalacji i ponownym uruchomieniu) w ramach narzędzi programistycznych w najnowszej wersji Firefoksa.
Ram
1
Właśnie wypróbowałem REST Easy. Odinstalowany na miejscu: interfejs zbyt mocno trzyma się za rękę i zmusza użytkownika do sztywnych przypadków użycia. Nie jest dobre dla rozwoju API.
7heo.tk
Wypróbowałem wszystkie powyższe sugestie dla Firefoksa, ale nie znalazłem nic tak przydatnego jak Postman dla Chrome . Nawiasem mówiąc, REST Easy nie obsługuje pustych odpowiedzi.
Lu55
45

Zainspirowany Postmanem dla Chrome postanowiłem napisać coś podobnego dla Firefoksa.

REST Easy * to dodatek do przeglądarki Firefox, który nie uruchamia się ponownie, a jego celem jest zapewnienie jak największej kontroli nad żądaniami. Dodatek jest nadal w stanie eksperymentalnym (nie został jeszcze sprawdzony przez Mozillę), ale rozwój postępuje całkiem nieźle.

Projekt jest open source, więc jeśli ktoś czuje się zmuszony do pomocy w rozwoju, byłoby to niesamowite: https://github.com/nathan-osman/Rest-Easy

* dodatek dostępny na stronie http://addons.mozilla.org zawsze będzie nieco w tyle za kodem dostępnym na GitHub

Nathan Osman
źródło
2
Niby fajnie, ale brakuje możliwości pełnej kontroli treści żądania. Obecnie oferuje możliwości klucz / wartość, ale byłoby przyjemne pełna kontrola nad postem.
galmok
Wsparcie PUT i DELETE przekonałoby mnie. W przeciwnym razie wygląda dobrze.
Dennis
1
@Pacerier: jest to funkcja, nad którą obecnie pracuję i ukończona w około 90%. Mamy nadzieję, że zostanie wydany przed końcem roku. Wydaje się, że zaległości są zatwierdzane przez Mozillę.
Nathan Osman,
2
Po ponad miesiącu oczekiwania nowa wersja została zatwierdzona. Obsługa PUT i DELETE już dostępna! W tym miesiącu dokonałem też wielu innych zmian, które pojawią się wkrótce w następnej wersji. (Mam nadzieję, że tym razem zostanie zatwierdzony wcześniej).
Nathan Osman
2
Jak się wydaje, nie jest to już dostępne. (Prawdopodobnie nie jest to rozszerzenie sieci, a zatem nie jest kompatybilne z Firefoksem> = 57.) Ten problem jest śledzony tutaj: github.com/nathan-osman/REST-Easy/issues/78
rugk
18

W szczególności poprosiłeś o „rozszerzenie lub funkcjonalność w Chrome i / lub Firefoksie”, które już otrzymałeś w odpowiedziach, ale podoba mi się prostota odpowiedzi Oezi na zamknięte pytanie „jak wysłać prośbę o wpis za pomocą przeglądarki internetowej” dla prostych parametrów. oezi mówi:

z formularzem, po prostu ustaw methodna"post"

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

To znaczy zbuduj sobie bardzo prostą stronę, aby przetestować działania postu.

dumbledad
źródło
16

Jest to trochę brzydkie, ale istnieje rozszerzenie Simple REST Client dla Chrome.

Działa dla mnie świetnie - pamiętaj, że nadal możesz używać z nim debuggera. Panel sieci jest szczególnie użyteczny; da ci renderowane obiekty JSON i strony błędów.

Nate
źródło
Nie sądzę, że to już istnieje.
zeusstl
1
Tak, link nie jest już dostępny, a nowym linkiem powinien być chrome.google.com/webstore/detail/advanced-rest-client/…
Rumen Jekov
@RumenJekov „ Zaawansowany klient REST” wydaje się być innym produktem (a zatem inną odpowiedzią) niż „ Prosty klient REST”
TylerH
9

Może nie być bezpośrednio związany z przeglądarkami, ale skrzypek to kolejne dobre oprogramowanie.

Debuger sieciowy Fiddler

Vineel Kovvuri
źródło
3

Możesz także użyć Watir lub Watin do automatyzacji przeglądarek. Watir jest napisany dla ruby, a Watin dla języków .Net. Nie jestem jednak pewien, czy tego właśnie szukasz.

Ceres
źródło
3

Wypróbuj Runscope. Bezpłatne narzędzie do pobierania próbek ich usługi jest dostępne na stronie https://www.hurl.it/ . Możesz ustawić metodę, uwierzytelnianie, nagłówki, parametry i treść. Odpowiedź pokazuje kod statusu, nagłówki i treść. Treść odpowiedzi można sformatować z JSON za pomocą składanej heirarchii. Płatne konta mogą automatyzować testowe wywołania API i wykorzystywać dane zwrotne do tworzenia nowych wywołań testowych. Ujawnienie COI: Nie mam związku z Runscope.

Bennett Brown
źródło
Istnieje również bezpłatny poziom dla Runscope, ma tylko dolny limit żądań na miesiąc i tylko 1 członek zespołu. Ujawnienie: Robię :-)
Darrel Miller
2

Sprawdzić http-tool Firefoxa ..

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.
bobbyrne01
źródło
2
Jak się wydaje, nie jest to już dostępne. (Prawdopodobnie nie jest to rozszerzenie sieci, a zatem nie jest kompatybilne z Firefoksem> = 57.)
rugk