有没有一种方法,使一个HTTP请求使用Chrome开发工具,而不使用插件像海报?
当前回答
扩展@dhfsk答案
这是我的工作流程
在Chrome DevTools中,右键单击您想要操作> Copy作为cURL的请求 开放的邮递员 单击左上角的导入,然后粘贴原始文本
其他回答
如果你想编辑并重新发布你在Chrome开发者工具的网络选项卡中捕获的请求:
右键单击请求的Name 选择“Copy > Copy as cURL” 粘贴到命令行(命令包括cookie和头文件) 根据需要编辑请求并运行
如果你在你的网站上使用jquery,你可以在你的控制台上使用这样的东西
$ . post ( “dom / data-home.php”, { 类型:"home", id: "0" }、功能(数据){ console.log(数据) }) < script src = " https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js " > < /脚本>
是的,有一个没有任何第三方扩展的方法。
我已经构建了javascript片段(你可以添加为浏览器书签),然后在任何网站上激活来监控和修改请求。:
如需进一步说明,请查看github页面。
$ . post ( “dom / data-home.php”, { 类型:"home", id: "0" }、功能(数据){ console.log(数据) }) < script src = " https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js " > < /脚本>
由于Chrome(和大多数其他浏览器)支持Fetch API,现在很容易从devtools控制台发出HTTP请求。
获取一个JSON文件:
fetch(“https://jsonplaceholder.typicode.com/posts/1”) .then(res => res.json()) 不要犹豫(console.log)
或者POST一个新资源:
fetch (https://jsonplaceholder.typicode.com/posts, { 方法:“文章”, 身体:JSON.stringify ({ 标题:“foo”, 身体:“酒吧”, 用户标识:1 }), 标题:{ “内容类型”:“application / json;charset = utf - 8 ' } }) .then(res => res.json()) 不要犹豫(console.log)
Chrome Devtools实际上也支持新的async/await语法(即使await通常只能在async函数中使用):
const response = await fetch('https://jsonplaceholder.typicode.com/posts/1')
console.log(await response.json())
请注意,您的请求将遵循同源策略,就像浏览器中的任何其他http请求一样,因此要么避免跨源请求,要么确保服务器设置了允许您的请求的CORS-headers。
使用插件(旧答案)
作为之前发布的建议的补充,我发现Chrome的邮递员插件工作得非常好。它允许你设置头和URL参数,使用HTTP认证,保存你经常执行的请求等等。
推荐文章
- 资源解释为样式表,但以MIME类型text/html传输(似乎与web服务器无关)
- Chrome iOS(和Safari)的远程调试
- 在Chrome中模拟有限的带宽?
- 资源解释为文档,但使用MIME类型application/zip传输
- 如何让Chrome允许混合内容?
- 了解Chrome网络日志“停滞”状态
- 如何卸载Service Worker?
- jQuery ' .is(":visible") '在Chrome中无效
- 如何保存样式面板的CSS Chrome开发工具的变化?
- 当你双击日文文本时,Chrome如何决定突出显示什么?
- Chrome不会删除会话cookie
- 在Chrome和Firefox中用Javascript报告的神秘的“脚本错误”
- 在Window上执行'btoa'失败:要编码的字符串包含Latin1范围之外的字符。
- Chrome中的请求监控
- 在Chrome 55中,防止显示HTML 5视频的下载按钮