上图是下面将要使用的项目文件位置,安装Node.js网上有很多教程就不说了,如果是Linux系统好像还要安装npm,win的已经集成到Nodejs安装包里一起安装了。
deepin下安装 Nodejs 执行以下代码:
- sudo apt-get install nodejs
安装 npm :
- sudo apt-get install npm
项目结构
package.json 项目配置文件 保存项目的基本信息
node_modules Node.js项目使用的功能模块
app.js:
- // Node.js 可以让JavaScript在浏览器之外运行 如:
- // 作为web服务器的编程语言在服务器上运行
- // 作为桌面应用的编程语言在各种系统中开发应用程序
- // 开发手机app
- // Js号称全栈编程语言
- // require函数是用来加载模块 模块默认保存位置node_modules文件夹
- var express = require('express')
- // 调用上一步加载的express函数创建一个web应用(app对象)
- var app = express()
- // 调用app对象的use方法
- // 调用express函数对象的static方法
- // 使用wwwroot文件中的文件可以通过浏览器访问的静态资源
- // 静态资源:浏览器自身下载即可使用 不需要服务端程序参与处理
- // 比如图片,html文件 css文件
- app.use(express.static('wwwroot'))
- // get表示处理一个get请求
- // get请求的数据是通过url中的查询字符串传到服务器
- // 使用表单发起get请求会导致页面刷新(实际上是打开了一个新页面)
- app.get('/user',function(request,response){
- // request表示所有请求数据
- // query表示查询字符串
- // name表示查询字符串中名字为name的数据
- var name = request.query.name
- var age = request.query.age
- console.log(name)
- console.log(age)
- console.dir(request.query)
- // response表示发送给浏览器的响应数据
- // status表示发送给浏览器的状态码
- // send表示发送给浏览的内容(响应体)
- response.status(200).send('<strong>你提交的数据是:</strong><br>' + name + '<br>' + age)
- })
- // listen监听指定的端口
- // 当有请求到达时会转给上边的get post请求等去处理
- // 第一个参数是监听的端口号 没有被占用的端口号都可以使用
- // 第二个参数是监听成功后的回调函数
- app.listen(3000,function(){
- console.log('服务器运行了')
- })
- // 启动此web应用的方法
- // 在命令中执行(切换到当前文件夹)
- // node app.js
- // 停止web应用的方法
- // 关闭命令行窗口 或者 ctrl + c
index.html:
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <meta http-equiv="X-UA-Compatible" content="ie=edge">
- <title>Form表单</title>
- </head>
- <body>
- <h1>提交个人资料</h1>
- <!-- action当提交表单时向何处发送表单数据 -->
- <!-- method 方法规定如何发送表单数据 -->
- <form action="/user" method="get">
- <input type="text" name="name" placeholder="请输入名字"><br>
- <input type="number" name='age' placeholder="请输入年龄"><br>
- <input type="submit" value="提交">
- </form>
- </body>
- </html>
补充资料: