一、Chrome开发者工具
在chrome浏览器中,右键点击空白处,点击“检查”;或者按“F12”,可调出开发者工具。
1.Elements
查看网页html、css、script
2.Console
简易的js调试工具,console.log('hi,javascript')
3.Sources
断点调试JS
4.Network
从发起网页页面请求Request后分析HTTP请求后得到的各个请求资源信息(包括状态、资源类型、大小、所用时间等),可以根据这个进行网络性能优化
HTTP请求包括4部分,最少包含3部分,第四部分可以为空
HTTP请求报文由请求行(request line)、请求头部(request header)、空行和请求数据组成。 按下图所示,可以在Chrome开发者工具查看 HTTP 请求内容
HTTP响应包括4部分
HTTP响应由响应消息行、响应消息头、空行和响应消息正文组成。 按下图所示,可以在Chrome开发者工具查看 HTTP 响应内容
5.Performance
记录并分析在网站的生命周期内所发生的各类事件,以此可以提高网页的运行时间的性能
使用步骤
a.按下ESC,调出调试工具 b.输入js c.点击左上角record按钮 d.点击红色stop按钮
6.Memory
如果你需要Timeline所能提供的更多信息时,可以尝试一下Profiles,比如记录JS CPU执行时间细节、显示JS对象和相关的DOM节点的内存消耗、记录内存的分配细节
7.Application
记录网站加载的所有资源信息,包括存储数据(Local Storage、Session Storage、IndexedDB、Web SQL、Cookies)、缓存数据、字体、图片、脚本、样式表等
8.Security
判断当前网页是否安全
9.Audits
对当前网页进行网络利用情况、网页性能方面的诊断,并给出一些优化建议。比如列出所有没有用到的CSS文件等
二、curl命令
命令行中输入curl --help,可以查看各指令的参数及用法
常用参数如下
| 参数 | 描述 |
|---|---|
| -I/--head | 只显示传输文档,经常用于测试连接本身 |
| -o/--output | 把输出写到该文件中,必须输入保存文件名 |
| -O/--remote-name | 把输出写到该文件中,保留远程文件的文件名 |
| -F/--form | 模拟表单提交 |
| -s/--silent | 静默模式,不输出任何东西 |
| -S/--show-error | 显示错误,在选项 -s 中,当 curl 出现错误时将显示 |
| -L/--location | 跟踪重定向 |
| -f/--fail | 不输出错误 |
| -n/--netrc | 从netrc文件中读取用户名和密码 |
| --netrc-optional | 使用 .netrc 或者 URL来覆盖-n |
| --ntlm | 使用 HTTP NTLM 身份验证 |
| -N/--no-buffer | 禁用缓冲输出 |
| -p/--proxytunnel | 使用HTTP代理 |
| --proxy-anyauth | 选择任一代理身份验证方法 |
| --proxy-basic | 在代理上使用基本身份验证 |
| --proxy-digest | 在代理上使用数字身份验证 |
| --proxy-ntlm | 在代理上使用ntlm身份验证 |
| -P/--ftp-port | 使用端口地址,而不是使用PASV |
| -M/--manual | 显示全手动 |
| -Q/--quote | 文件传输前,发送命令到服务器 |
| -r/--range | 检索来自HTTP/1.1或FTP服务器字节范围 |
| --range-file | 读取(SSL)的随机文件 |
| -R/--remote-time | 在本地生成文件时,保留远程文件时间 |
| --retry | 传输出现问题时,重试的次数 |
| --retry-delay | 传输出现问题时,设置重试间隔时间 |
| --retry-max-time | 传输出现问题时,设置最大重试时间 |
| --socks4 | 用socks4代理给定主机和端口 |
| --socks5 | 用socks5代理给定主机和端口 |
| -t/--telnet-option | Telnet选项设置 |
| --trace | 对指定文件进行debug |
| --trace-ascii Like | 跟踪但没有hex输出 |
| --trace-time | 跟踪/ 详细输出时,添加时间戳 |
| -T/--upload-file | 上传文件 |
| -u/--user | 设置服务器的用户和密码 |
| -U/--proxy-user | 设置代理用户名和密码 |
| -V/--version | 显示版本信息 |
| -w/--write-out [format] | 什么输出完成后 |
| -x/--proxy | 在给定的端口上使用HTTP代理 |
| -X/--request | 指定什么命令 |
| -y/--speed-time | 放弃限速所要的时间。默认为30 |
| -Y/--speed-limit | 停止传输速度的限制,速度时间'秒 |
| -z/--time-cond | 传送时间设置 |
| -0/--http1.0 | 使用HTTP 1.0 |
| -1/--tlsv1 | 使用TLSv1(SSL) |
| -2/--sslv2 | 使用SSLv2的(SSL) |
| -3/--sslv3 | 使用的SSLv3(SSL) |
| --3p-quote | like -Q for the source URL for 3rd party transfer |
| --3p-url | 使用url,进行第三方传送 |
| --3p-user | 使用用户名和密码,进行第三方传送 |
| -4/--ipv4 | 使用IP4 |
| -6/--ipv6 | 使用IP6 |
| -#/--progress-bar | 用进度条显示当前的传送状态 |