Express基础使用和基础配置

简介: Express 简介 Express 是一个简洁而灵活的 node.js Web应用框架, 提供一系列强大特性帮助你创建各种Web应用。

Express 简介

Express 是一个简洁而灵活的 node.js Web应用框架, 提供一系列强大特性帮助你创建各种Web应用。

Express 使用

  1. 初始化package.json
    npm init
    

疯狂回车直接使用默认值就好。

  1. 使用npm快速得到Express

    npm i express
    
  2. 新建app.js文件,编写代码如下
    ```js
    const express = require('express');
    const app = express();

app.get('/', (req, res) => {
res.status(200).send("Get Home Page ...")
});

app.listen(3000);


4. 修改`package.json`文件,将`main`属性值改为`app.js`

5. 运行`app.js`启动服务
```shell
node app
  1. 浏览器访问http://localhost:3000查看结果

超级简单就拥有了自己的服务有没有,让前端同学也能自己给自己提供接口了。

Express 配置

express没有太多需要你来配置的,这里我说一下比较常用的。

返回页面

  1. 根目录新建index.html,内容随便写。

  2. app.js 新增如下代码。

    app.get('/index', (req, res) => {
         
         
     res.sendFile(__dirname + '/index.html')
    })
    
  3. 重启服务,访问http://localhost:3000/index查看结果

配置静态资源访问目录

上面返回页面可以通过这种方式变简单,因为不可能每次写一个页面就加一个接口。

  1. 新建public目录,可以把index.html移进去。
  1. app.js新增如下代码。

    app.use(express.static(__dirname + '/public'));
    
  2. 重启服务,访问http://localhost:3000/index.html查看结果

使用 app.use()第一个参数可以是字符串,对该有该前缀地址的进行拦截,例如:

app.use('/statics', express.static(__dirname + '/statics'));

这样就需要访问http://localhost:3000/statics/index.html才能访问到index.html

不同类型的请求

  • get请求

    app.get('', (req, res) => {
         
         })
    
  • post请求

    app.post('', (req, res) => {
         
         })
    
  • put请求

    app.put('', (req, res) => {
         
         })
    
  • delete请求

    app.delete('', (req, res) => {
         
         })
    
  • 匹配所有类型的请求

    app.all('', (req, res) => {
         
         })
    

跨域配置

跨域是什么就不解释了,不了解的直接网上去查,不想了解的直接用。

方案一

  1. 下载cors
    npm i cors
    
  1. 使用cors

    const cors = require('cors');
    app.use(cors());
    
  2. 重启服务验证结果

方案二

  1. 添加中间件拦截器,在app.js中添加如下代码

    app.use((req, res, next) => {
         
         
     // 一定要执行next函数
     next();
    })
    
  2. 查看浏览器报错信息,根据自己需求添加跨域配置,例如一定会出现的跨域报错信息
    image.png
    看我选中的那一段,就是需要进行的跨域的配置。

  3. 修改中间件拦截器,代码如下

    app.use((req, res, next) => {
         
         
     res.set('Access-Control-Allow-Origin', 'http://localhost:8080');
     next();
    })
    
  4. 重启服务,验证结果

完整app.js代码

const express = require('express');
const cors = require('cors');
const app = express();

app.use(express.static(__dirname + '/public'));
app.use(cors());

// app.use((req, res, next) => {
   
   
//     res.set('Access-Control-Allow-Origin', 'http://localhost:8080');
//     next();
// })

app.get('/', (req, res) => {
   
   
    res.status(200).send("Get Home Page ...")
});

app.listen(3000);
目录
相关文章
|
4月前
|
JavaScript 前端开发
nodejs配置express服务器,运行后自动打开浏览器
作为前端开发的项目,有的时候打包完后就想在本地测试是什么样子的,另外一些如cesium等程序,需要在服务的环境下才能启动三维球等。 这里使用nodejs+express搭建一个普通的服务器。
nodejs配置express服务器,运行后自动打开浏览器
|
11月前
|
JavaScript 网络协议 应用服务中间件
Nginx & Node.js & Express 配置 HTTPS #12
Nginx & Node.js & Express 配置 HTTPS #12
194 0
|
SQL 存储 数据库
SQL Server 2019 Express 及 SSMS18 下载安装配置教程(二)
SQL Server 2019 Express 及 SSMS18 下载安装配置教程
649 0
SQL Server 2019 Express 及 SSMS18 下载安装配置教程(二)
|
SQL 存储 数据管理
SQL Server 2019 Express 及 SSMS18 下载安装配置教程(一)
SQL Server 2019 Express 及 SSMS18 下载安装配置教程
1185 0
SQL Server 2019 Express 及 SSMS18 下载安装配置教程(一)
|
开发框架 前端开发 .NET
[转载]IIS Express 7.5使用及配置方法
IIS Express7.5     微软Scott Guthrie发布了IIS Express:IIS的一个轻量级替代品,有希望替代Cassini(Visual Studio的内置Web服务器)。
1012 0
|
4月前
|
JSON JavaScript 前端开发
超级实用!详解Node.js中的util模块和express模块
超级实用!详解Node.js中的util模块和express模块
|
5月前
|
开发框架 JSON JavaScript
Node.js教程-express框架
Node.js教程-express框架
39 1
|
6月前
|
开发工具 git
如何运行github上面的node+express项目
如何运行github上面的node+express项目
99 0