博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2022/1/28

Posted on 2022-01-28 23:50  为你摘星星  阅读(33)  评论(0)    收藏  举报

1. 正则表达式中 \s 表示匹配空白字符  \S表示匹配非空白字符  [\s\S]* 表示匹配任意多个任意字符。

2.正则表达式的 /<script>[\s\S]*<\/script>/.exec()方法传入的参数为需要匹配的字符串,结果为一个数组,下表为0的元素就是匹配的结果。匹配失败的结果为null。

 3.通过nodejs的http模块我们就能很简单的实现一个web服务器软件,从而不需要安装 IIS 和 apache等web服务器软件,就可以将本机变为一台提供服务的服务器。

4.127.0.0.1可以在本机的浏览器输入,并且该IP地址表示着本机的服务器的IP地址。127.0.0.1对应的域名为localhost

5.创建一个web服务器的步骤为:

回调函数中的参数req和res分别为请求对象和响应对象。 请求对象中有客户端发送的数据,和请求的相关属性,响应对象有服务器对客户端的请求做出响应的方法和属性和数据等等。

req.url 拿到的是请求地址中端口号后面的地址,如下图,并且浏览器默认的请求类型为 get请求。

res.end()方法的作用是向客户端发送数据,并且结束这次请求的处理过程。并且该方法只能接受一个参数(不知是否正确,在我手动的传入第二个字符串类型的变量时,服务器端会报错,客户端页面也不会显示)

注意点:当客户端请求的是html文件,响应头类型才写 'text/html',当你请求的页面中需要引入外部的CSS文件时,设置的响应头不要写成上图那样的。(应该写成什么样的暂时不清楚)

 6.字符串的翻转用[...str].reverse().join('');其中  ...  扩展运算符对字符串也起作用,数组的reverse方法会修改原数组,数组的join方法不会修改原数组,并且不传输参数,则会带上数组中的,  。  若传入的参数为空字符串 (即''),则返回的数组以空字符串连接。如图示。

 

 7.反转字符串也可以用 str.split('').reverse().join('');  其中 字符串的split方法不会修改原数组,但是不这样用,因为如果字符范围超过一个UTF-16码元的话,用split会出现问题,但是扩展运算符不会出问题,所以一般是用扩展运算符将字符串拆分成一个数组。

 8.http请求报文的一些方法

  OPTION        请求一些选项信息(返回服务器可用的请求方法)

  GET    请求读取由URL所标志的信息

  POST    给服务器添加信息(例如,注释)

  HEAD    请求读取由URL所标志的信息的首部

  PUT    在指明的URL下存储一个文档

  DELETE   删除指明的URL所标志的资源

  TRACE  用来进行环回测试的请求报文

  CONNECT  用于代理服务器

其中GET和HEAD请求方法基本一致,比如我们只是确认一个内容(比如照片)还正常存在,不需要返回照片的内容,这时用HEAD比较合适。

9.HTTP请求信息和响应信息的格式

请求: 

   (1)请求行            (请求行又分为三部分:1.请求方法2.请求路径3.所用的协议)

   (2)请求头信息

   (3)请求主体信息

10.响应状态码

  1XX 信息提示   接收到请求,继续处理,通告消息,可能还需要进一步交互。

  2XX 成功     操作成功的接收到,理解和接受    (200:服务器成功返回网页文件)

  3XX 重定向    为了完成请求,必须采取进一步措施,表示资源已被移走,需要向新的URL发请求  (301/2:永久/临时重定向; 304 Not Modified:未修改-从缓存中读取数据时;307:重定向中保持原有的请求数据)向一个服务器提交数据时,发生重定向之后,请求方法可能变成get,所以被访问页面的相应行要设置重定向的状态码为307;

  4XX 客户端错误  请求的语法有错误或者不能完全被满足  (404:请求的网页不存在)

  5XX 服务端错我  服务器无法完成明显有效的请求      (500:服务器内部错误;503:服务器暂时不可用)

11.Cookie中文名称为小型文本文件,指某些网站为了辨别用户身份、进行会话跟踪而存储在用户本地终端上的数据(是一些字符串),弥补了HTTP协议无状态性的不足,有利于进行跟踪用户并提供针对性服务,但也带来了一些安全性问题。