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?


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 .


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

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


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 :



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


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.


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.


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




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.


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.

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
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.