前言

经过学习试着对课上内容做一个简单的总结。


示意图

HTTP 请求部分

  1. HTTP请求是指从客户端到服务器端的请求消息。包括:消息首行中,对资源的请求方法、资源的标识符及使用的协议。
    HTTP发送请求信息内容:
    1) 请求行:是一个ASCII文本行,由三个标记组成--请求的HTTP方法、URL、HTTP版本,之间用空格分开{GET /lovobook/index.html HTTP/1.0};
    2) 请求头:HTTP协议使用HTTP头来传递请求的元信息。HTTP头是一个用冒号分隔的名称/值对,冒号前面是HTTP头发名称,后面是HTTP的值;
    3) 空行: 发送回车符和退行,通知服务器一下不再有请求头;
    4) 消息体:  HTTP请求中带有查询字符串时,如果是GET方法,查询字符或表单数据附加值请求行中,则消息体中就没有内容;如果是POST方法,查询字符串或表单数据及添加在消息体中。
    
  2. 用 Chrome 发请求
    打开 Network
    地址栏输入网址
    在 Network 点击,查看 request,点击「view source」
    点击「view source」
    可以看到请求的前三部分了
    如果有请求的第四部分,那么在 FormData 或 Payload 里面可以看到

HTTP 响应部分

  1. HTTP回送响应信息内容:
    1) 状态行:以一个状态行开头。状态行有HTTP协议版本、响应状态码和响应描述组成,之间用空格分隔;
    2) 响应头:与请求头一样;
    3) 空白行:最后一个响应头之后是一个空行,发送回车符和退行,表明以下不再有响应头;
    4) 消息体:要发送回BS的HTTP文档或其它要显示的内容等。Web服务器把要发送给客户端的文档信息放在消息体中。
    
  2. 用 Chrome 查看响应
    打开 Network
    输入网址
    选中第一个响应
    查看 Response Headers,点击「view source」,点击「view source」,点击「view source」
    你会看到响应的前两部分
    查看 Response 或者 Preview,你会看到响应的第 4 部分

如何使用 curl 命令

  1. curl是基于URL语法在命令行方式下工作的文件传输工具,它支持FTP,FTPS,HTTP,HTTPS,GOPHER,TELNET,DICT,FILE及LDAP等协议。curl支持HTTPS认证,并且支持HTTP的POST,PUT等方法,FTP上传,kerberos认证,HTTP上传,代理服务器,cookies,用户名/密码认证,通过http代理服务器上传文件到FTP服务器等等,功能十分强大。

  2. curl的常用选项:
    复制代码
    1 -A/–user-agent 设置用户代理发送给服务器,即告诉服务器浏览器为什么
    2 -basic 使用HTTP基本验证
    3 –tcp-nodelay 使用TCP_NODELAY选项
    4 -e/–referer 来源网址,跳转过来的网址
    5 –cacert 指定CA证书 (SSL)
    6 –compressed 要求返回是压缩的形势,如果文件本身为一个压缩文件,则可以下载至本地
    7 -H/–header 自定义头信息传递给服务器
    8 -I/–head 只显示响应报文首部信息
    9 –limit-rate 设置传输速度
    10 -u/–user <user[:password]>设置服务器的用户和密码
    11 -0/–http1.0 使用HTTP 1.0

  3. 示例
    curl -s -v -H “Frank: xxx” – “https://www.baidu.com"


    示意图

请求的内容为
GET / HTTP/1.1
Host: www.baidu.com
User-Agent: curl/7.54.0
Accept: /
Frank: xxx

git基本操作

1.git init
git init命令创建一个空的Git仓库或重新初始化一个现有仓库.在路径中建立一个.git目录。
示意图
2.git add
git add命令将文件内容添加到索引(将修改添加到暂存区)。也就是将要提交的文件的信息添加到索引库中。
示意图
3.git commit -v
git commit -v命令提交暂存区到仓库区并将显示所有更改过的信息。
示意图

几个简单命令介绍

1.ls
即list directory contents。ls命令能够列出当前目录下的所有内容。
2.cat
即concatenate files and print on the standard output。一次显示整个文件内容。
3.mv
即move (rename) files。用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中。
4.touch
touch命令有两个功能:一是用于把已存在文件的时间标签更新为系统当前的时间(默认方式),它们的数据将原封不动地保留下来;二是用来创建新的空文件。

explainshell.com简介

explainshell.com 是一个帮助你解释命令行的网站,它会分析命令的帮助文档,然后根据你想查询的命令参数来抽取对应的解释,然后简洁易懂地显示出来。


示意图

Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.

Quick Start

Create a new post

1
$ hexo new "My New Post"

More info: Writing

Run server

1
$ hexo server

More info: Server

Generate static files

1
$ hexo generate

More info: Generating

Deploy to remote sites

1
$ hexo deploy

More info: Deployment