J'ai cherché un moyen de modifier une requête XHR effectuée dans mon navigateur, puis de la rejouer à nouveau. Disons que j'ai une requête POST complète dans mon navigateur et que la seule chose que je souhaite modifier est une petite valeur, puis la rejouer. Ce serait beaucoup plus facile et plus rapide à faire directement dans le navigateur.
J'ai un peu cherché sur Google et je n'ai pas trouvé de moyen de le faire dans Chrome ou Firefox. Existe-t-il un moyen de le faire dans l'un de ces navigateurs, ou peut-être dans un autre?
google-chrome
firefox
browser
xmlhttprequest
Madsobel
la source
la source
OPTIONS
demandes Preflight ( ), vous devez cliquer sur "Replay" sur la demande Preflight, et non sur la demande finale.Réponses:
Chrome:
curl
commandeVoir capture:
Sinon, et au cas où vous auriez besoin d'envoyer la demande dans le contexte d'une page Web , sélectionnez "Copier comme récupération" et éditez-envoyez le contenu à partir du panneau de la console javascript.
Firefox:
Firefox permet de modifier et de renvoyer XHR directement depuis le panneau Réseau. La capture ci-dessous provient de Firefox 36:
la source
curl ... > preview.html
puis ouvrez le fichier dans le navigateur.&& open preview.html
sur macOS et le fichier s'ouvre directement après la demandeChrome a maintenant Copier comme récupération dans la version 67:
https://developers.google.com/web/updates/2018/04/devtools#fetch
Exemple de sortie:
La différence est que Copier en tant que cURL comprendra également tous les en-têtes de demande (tels que Cookie et Accept) et convient pour relire la demande en dehors de Chrome. Le
fetch()
code est adapté à la lecture à l'intérieur du même navigateur.la source
fetch
commande directement dans la console Chrome et relire la demande..then(r => r.json()).then(json => console.log(json))
Mes deux suggestions:
Le plugin Postman de Chrome + le plugin Postman Interceptor . Plus d'informations: Postman capturant des demandes de documents
Si vous êtes sous Windows, le Fiddler de Telerik est une option. Il a une option de composition pour relire les requêtes http, et c'est gratuit.
la source
Mettre à jour / compléter la réponse zszep :
Après avoir copié la demande en tant que cUrl (bash), importez-la simplement dans l' application Postman :
la source
Pour Firefox, le problème s'est résolu de lui-même. Il a la fonctionnalité "Modifier et renvoyer" implémentée.
Pour Chrome, l' extension semble faire l'affaire.
la source
5 ans se sont écoulés et cette exigence essentielle n'a pas été ignorée par les développeurs de Chrome.
Bien qu'ils n'offrent aucune méthode pour modifier les données comme dans Firefox, ils offrent une rediffusion XHR complète.
Cela permet de déboguer les appels ajax. "Replay XHR" répétera toute la transmission.
la source
Il existe plusieurs façons de le faire, comme mentionné ci-dessus, mais d'après mon expérience, la meilleure façon de manipuler une demande XHR et de la renvoyer est d'utiliser les outils de développement de chrome pour copier la demande en tant que demande cURL (cliquez avec le bouton droit sur la demande dans l'onglet réseau ) et de simplement importer dans l'application Postman (bouton d'importation géant en haut à gauche).
la source
Pas besoin d'installer des extensions tierces!
Il existe le javascript-snippet , que vous pouvez ajouter en tant que navigateur-bookmark puis activer sur n'importe quel site pour suivre et modifier les demandes. On dirait:
Pour plus d'informations, consultez la page github.
la source