第一个简易的Node.js Server

接收请求

我们的脚本只需要一个文件就可以搞定

1.新建一个安全的目录,不需要我重复强调吧?
2.cd ~/Desktop; mkdir node-demo; cd node-demo
3.touch server.js
4.编辑 server.js,内容我已经上传到 GitHub。
5.运行 node server 或者 node server.js,看到报错
6.根据报错提示调整你的命令
7.成功之后,这个 server 会保持运行,无法退出
	i.如果你想「中断」这个 server,按 Ctrl + C即可(C 就是 Cancel 的意思)
	ii.中断后你才能输入其他命令
	iii.我建议你把这个 server 放在那里别动,新开一个 Bash 窗口,完成下面的教程

好了服务器完成。只不过

  1. 这个服务器目前只有一个功能,那就是打印出路径和查询字符串
  2. 还缺少一个重要的功能,那就是发出 HTTP 响应

目前我们先只做一个功能玩玩。

接下来你要发起一个请求到这个服务器。这听起来有点怪异,「我向自己发起请求」,目前是的,因为你买不起服务器啊。

在新的 Bash 窗口运行 curl http://localhost:你的指定的端口/xxx 或者 curl http://127.0.0.1:你指定的端口/xxx。

你会马上发现 server 打印出了路径:
在这里插入图片描述

  1. 这说明我们的 server 收到了我们用 curl 发出的请求
  2. 由于 server 迟迟没有发出响应,所以 curl 就一直等在那里,无法退出(用 Ctrl + C 中断这个傻 curl)

发出响应

接下来我们让我们 server 发出响应

1. 编辑 server.js
2.在中间我标注的区域添加两行代码
	response.write('Hi')
	response.end()
3.中断之前的 server,重新运行 node server 8888
4.curl http://127.0.0.1:8888/xxx,结果如下:
Hi%
这个 % 不是我们的内容,% 表示结尾。别再问我了。如果你看 % 不爽,就把 'Hi' 换成 'Hi\n'。
5.好了,响应添加成功
6.使用 curl -s -v -- "http://localhost:8888/xxx" 可以查看完整的请求和响应(上节课的内容)

根据请求返回不同的响应

响应 /
响应 /xxx
响应 404
响应 /xxx.html
响应 /xxx.frank
再次强调,后缀是废话。文件内容是有 HTTP 头中的 Content-Type 保证的
响应 /xxx.css
响应 /xxx.js
HTTP 路径不是文件路径!!!/xxx.html 不一定对应 xxx.html 文件
HTTP 路径不是文件路径!!!/xxx.html 不一定对应 xxx.html 文件
HTTP 路径不是文件路径!!!/xxx.html 不一定对应 xxx.html 文件

猜你喜欢

转载自blog.csdn.net/weixin_42617604/article/details/82944825