Como enviar manualmente solicitações HTTP POST do navegador Firefox ou Chrome?


1034

Quero testar alguns URLs em um aplicativo da Web em que estou trabalhando. Para isso, gostaria de criar manualmente solicitações HTTP POST (o que significa que posso adicionar quaisquer parâmetros que eu quiser).

Há alguma extensão ou funcionalidade no Chrome e / ou Firefox em falta?


1
O DHC by Restlet (disponível na Chrome Webstore) também é bastante útil.
Devesh Khandelwal

10
Faça uma chamada AJAX no console do Chrome. Nenhuma extensão necessária. Essa é uma boa maneira de fazer solicitações POST sem a necessidade de pegar cookies de autenticação. $.post('/resource/path/')
FearlessFuture

11
Enquanto um complemento é necessário, o fechamento é um absurdo absurdo. Ele estava pedindo funcionalidade no chrome ou no firefox, ou, se ele precisar de um plugin. Que pode exigir um plugin specifed ou não especificado não é o ponto
Shayne

26
A postagem foi fechada incorretamente. Ele não pede uma ferramenta, mas uma funcionalidade nas ferramentas com as quais o autor já está trabalhando. Dessa forma, temos que fechar todas as perguntas sobre como fazer isso ou aquilo em alguma ferramenta - e será uma boa décima parte do SO.
Gangnus

8
Percebi esse recurso no Firefox quando você abre a guia rede e escolhe uma solicitação aleatória Edit and Resend, o que é bem legal.
jurl

Respostas:


1838

Estou criando um aplicativo do Google Chrome chamado Postman para esse tipo de coisa. Todas as outras extensões pareciam um pouco datadas, por isso eram minhas. Ele também possui vários outros recursos que foram úteis para documentar nossa própria API aqui.


O Postman agora também possui aplicativos nativos (ou seja, autônomos) para Windows, Mac e Linux! Agora é mais preferível usar aplicativos nativos, leia mais aqui .


1
Alguma intenção de transportar isso para o Firefox? (Ou outra coisa senão cromo)
Oli

1
Sim. Funciona bem para URLs de host local.
Abhinav

4
Ao usar o POST no Postman, adicione suas chaves e valores ao corpo quando x-www-form-urlencoded for selecionado. @Abhivav Eu só quero dizer obrigado pela incrível aplicação. Funciona muito bem ao testar o RESTful.
David

1
Certifique-se de instalar o plug-in Postcept interceptor também se você quiser usar os cookies do seu navegador, sessão.
GP cyborg

2
Fico feliz em ler este post após 9 anos e pensar em como o carteiro se torna parte integrante da vida dos desenvolvedores. Obrigado @Abhinav e equipe por desenvolvê-lo.
Santhosh K Thadka

330

CURL é IMPRESSIONANTE para fazer o que você quiser! É uma ferramenta de linha de comando simples, mas eficaz.

Restante comandos de teste de implementação:

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
Estou votando positivo mesmo que seja uma resposta errada para a pergunta: é o que eu precisava saber.
Jim Pivarski

8
Ele não serve para todos os fins, porque não pode anexar cookies já configurados em um navegador. Por exemplo, você pode fazer login manualmente em um site e enviar uma solicitação de postagem. Com a onda, isso seria uma dor enorme se o processo de login é tratado com coisas javascript
Vic Seedoubleyew

Isso não funciona para mim, não posso usar aspas simples no OSX com zsh e bash, o shell está se transformando no quote>modo. Eu preciso usar-d "{\"..
Daniel W.

193

Raposa de fogo

Abra o painel Rede nas Ferramentas do desenvolvedor, pressionando Ctrl+Shift+Eou indo na Barra de menus -> Ferramentas -> Desenvolvedor da Web -> Rede. Em seguida, clique no pequeno ícone da porta no canto superior direito (na forma expandida da captura de tela, você o encontrará à esquerda dos cabeçalhos destacados), segunda linha (se não a vir, recarregue a página) -> Editar e reenvie qualquer solicitação que você desejar

Ferramentas de desenvolvimento do Firefox com o botão "Editar e reenviar" realçado

Corpo da solicitação POST realçado


2
Esse recurso está quebrado para mais alguém? Ao editar os parâmetros na caixa "Query String", após alterar um único caractere, ele se recusa a alterar a solicitação ainda mais. A única maneira de fazê-lo além do que é para editar todo o URL / solicitação (o que é difícil, porque é tudo smooshed juntos)
Coldblackice

@ Coldblackice Você pode postar uma captura de tela ou um gravador de etapas com problemas, por favor? Eu posso editar a string de consulta muito bem. Para adicionar uma nova string de consulta, eu uso & = ou apenas inicio uma nova linha. Para editar, altere k, v ou apenas apago e recomeço.
0fnt

Se você deseja um campo para a string de consulta ( ?key=value) em que é possível inserir pares de valores de chave linha por linha, basta acrescentar ae ?uma letra ao URLcampo na parte superior e o Query Stringcampo será exibido.
xuiqzy 14/02

1
essa é a resposta certa.
Metehan Gülaç

162

Esqueça o navegador e tente a CLI. HTTPie é uma ótima ferramenta!

insira a descrição da imagem aqui

Clientes http da CLI :

Se você insistir na extensão do navegador, então:

Chrome :

Firefox :



Poster última actualização 28/06/11 - atualidades meios Firefox não há nenhuma maneira para lançá-lo
Richard

@akostadinov Não consigo usar o recurso de teste de recursos no mozilla, a ferramenta não aparece (mesmo após a instalação e a reinicialização) para mim nas ferramentas do desenvolvedor na versão mais recente do firefox.
Ram

1
Apenas tentei REST Easy. Desinstalado no local: a interface é exagerada e força o usuário a casos de uso rígidos. Não é bom para o desenvolvimento da API.
7heo.tk

Tentei todas as sugestões acima para o Firefox, mas não encontrou nada tão útil quanto o Postman para Chrome . REST Easy , a propósito, não lida com respostas vazias.
Lu55

45

Tendo me inspirado muito no Postman para Chrome , decidi escrever algo semelhante para o Firefox.

O REST Easy * é um complemento do Firefox sem reinicialização que visa fornecer o máximo de controle possível sobre as solicitações. O complemento ainda está em um estado experimental (ainda não foi revisado pela Mozilla), mas o desenvolvimento está progredindo muito bem.

O projeto é de código aberto; portanto, se alguém se sentir compelido a ajudar no desenvolvimento, isso seria incrível: https://github.com/nathan-osman/Rest-Easy

* o complemento disponível em http://addons.mozilla.org sempre estará um pouco atrás do código disponível no GitHub


2
Parece bom, mas não tem a capacidade de controlar totalmente o corpo da solicitação. Atualmente, oferece habilidades de chave / valor, mas o controle total do corpo da publicação seria bom.
galmok

O suporte PUT e DELETE me conquistaria. Parece bom caso contrário.
Dennis

1
@ Pacerier: é um recurso no qual estou trabalhando e estou cerca de 90% completo. Espero que seja lançado antes do final do ano. Parece haver um backlog que obtém addons aprovados pela Mozilla.
21414 Nathan Osman

2
Após mais de um mês de espera, a nova versão foi aprovada. O suporte PUT e DELETE chegou! E nesse mês, também fiz várias outras mudanças que aparecerão em breve no próximo lançamento. (Espero que seja aprovado mais cedo desta vez.)
Nathan Osman

2
Isso não está mais disponível, ao que parece. (Ele provavelmente não é um WebExtension e, portanto, não é compatível com Firefox> = 57.) Este problema é monitorado aqui: github.com/nathan-osman/REST-Easy/issues/78
rugk

18

Você solicitou especificamente "extensão ou funcionalidade no Chrome e / ou Firefox", fornecidas pelas respostas que você já recebeu, mas eu gosto da simplicidade da resposta da oezi à pergunta encerrada "como enviar uma solicitação de postagem com um navegador da web" para parâmetros simples. oezi diz:

com um formulário, basta definir methodcomo"post"

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

Ou seja, crie uma página muito simples para testar as ações pós.


16

É um pouco feio, mas há a extensão Simple REST Client para Chrome.

Funciona muito bem para mim - lembre-se de que você ainda pode usar o depurador com ele. O painel Rede é particularmente útil; ele fornecerá objetos JSON renderizados e páginas de erro.


Não pense que isso existe mais.
21419 zeusstl

1
Sim, o link não está mais disponível e o novo link deve ser chrome.google.com/webstore/detail/advanced-rest-client/…
Rumen Jekov 04/04/19

@RumenJekov " Cliente REST avançado " parece um produto diferente (e, portanto, uma resposta diferente) do que " Cliente REST simples "
TylerH




3

Experimente o Runscope. Uma ferramenta gratuita de amostragem de seu serviço é fornecida em https://www.hurl.it/ . Você pode definir o método, autenticação, cabeçalhos, parâmetros e corpo. A resposta mostra o código de status, os cabeçalhos e o corpo. O corpo da resposta pode ser formatado a partir de JSON com uma hierarquia recolhível. Contas pagas podem automatizar chamadas de API de teste e usar dados de retorno para criar novas chamadas de teste. Divulgação da COI: Não tenho relação com a Runscope.


Também existe um nível gratuito para o Runscope, ele possui um limite inferior de solicitações por mês e apenas 1 membro da equipe. Divulgação: I do :-)
Darrel Miller

2

Confira o http-toolfirefox ..

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
Isso não está mais disponível, ao que parece. (Ele provavelmente não é um WebExtension e, portanto, não é compatível com Firefox> = 57.)
rugk
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.