Existe-t-il un moyen de faire une requête HTTP en utilisant les outils de développement Chrome sans utiliser un plugin tel que POSTER?
Étant donné que Fetch API est pris en charge par Chrome (et la plupart des autres navigateurs), il est désormais très facile de créer des requêtes HTTP à partir de la console devtools.
Pour OBTENIR un fichier JSON, par exemple:
fetch('https://jsonplaceholder.typicode.com/posts/1')
.then(res => res.json())
.then(console.log)
Ou pour POSTER une nouvelle ressource:
fetch('https://jsonplaceholder.typicode.com/posts', {
method: 'POST',
body: JSON.stringify({
title: 'foo',
body: 'bar',
userId: 1
}),
headers: {
'Content-type': 'application/json; charset=UTF-8'
}
})
.then(res => res.json())
.then(console.log)
En fait, Chrome Devtools prend également en charge la nouvelle syntaxe async/wait (même si wait ne peut normalement être utilisé que dans une fonction async):
const response = await fetch('https://jsonplaceholder.typicode.com/posts/1')
console.log(await response.json())
Notez que vos demandes seront soumises à la politique de même origine , comme toute autre demande HTTP dans le navigateur, évitez donc les demandes d'origine croisée ou assurez-vous que le serveur définit les en-têtes CORS qui permettent votre demande.
Utiliser un plugin (ancienne réponse)
En plus des suggestions précédemment publiées, le plug-in Postman pour Chrome fonctionne très bien. Il vous permet de définir des en-têtes et des paramètres d’URL, d’utiliser l’authentification HTTP, d’enregistrer les requêtes que vous exécutez fréquemment, etc.
Si vous souhaitez modifier et réémettre une demande que vous avez capturée dans l'onglet Réseau de Chrome Developer Tools:
Name
de la demande.Copy > Copy as cURL
Je sais, vieux post ... mais il pourrait être utile de laisser ceci ici.
Les navigateurs modernes prennent désormais en charge le Fetch API .
Vous pouvez l'utiliser comme ceci:
fetch("<url>")
.then(data => {
data.json() // could be .text() or .blob() depending on the data you are expecting
.then(y => console.log(y)); // print your data
});
obs: Toutes les vérifications CORS seront effectuées, car il s'agit d'une XmlHttpRequest améliorée.
Si votre page Web contient jquery, vous pouvez l'écrire sur la console de développement de chrome:
$.get(
"somepage.php",
{paramOne : 1, paramX : 'abc'},
function(data) {
alert('page content: ' + data);
}
);
Sa façon jquery de le faire!
En toute simplicité, si vous souhaitez que la demande utilise le même contexte de navigation que la page que vous consultez déjà, procédez comme suit:
window.location="https://www.example.com";
Développer @dhfsk répondre
Voici mon flux de travail
si vous utilisez jquery sur votre site web, vous pouvez utiliser quelque chose comme ceci sur votre console
$.post(
'dom/data-home.php',
{
type : "home", id : "0"
},function(data){
console.log(data)
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
J'ai eu la meilleure chance de combiner deux des réponses ci-dessus. Accédez au site dans Chrome, puis recherchez la demande dans l’onglet Réseau de DevTools. Cliquez avec le bouton droit de la souris sur la demande et sur Copier, mais Copier en tant que récupération au lieu de cURL. Vous pouvez coller le code d'extraction directement dans la console DevTools et le modifier au lieu d'utiliser la ligne de commande.
Toutes étaient des réponses utiles, je voulais juste ajouter un outil que je trouve assez utile Advanced Rest Client .
Son utilisation peut vous aider à gagner beaucoup de temps à long terme si vous allez faire plusieurs demandes d'API.