nodejs+express搭建小程序後臺服務器

本文使用node.js和express來爲小程序搭建服務器。node.js簡單說是運行在服務端的javascript;而express是node.js的一個Web應用框架,使用express能夠很是簡單快捷地搭建起網站。javascript


0、背景

官方要求小程序的包最多不能超過2M,減少小程序包大小最有效的方法就是將本地圖片上傳至服務器。
本文搭建服務器,以小程序從後臺獲取圖片爲例,實現小程序與後臺的通訊。
小程序採用這篇教程mpvue從一無全部開始仿大衆點評小程序中的demo(但圖片均移動到了public/images),
能夠從這裏下載項目文件css


一、開發準備

要搭建小程序後臺有兩種選擇
(1)購買雲服務器。詳細可見這裏
(或直接使用雲開發,雲開發是小程序在2018.9新增的功能,詳細可見這裏
(2)使用代理服務器,可實現搭建本地服務器,進行本地開發調試。
例如使用charels進行反代理,教程可見:mac版win版html

注意映射的線上域名和服務器端口要與實際設置的一致。好比這裏採用的線上域名爲https://wx.test.cn,搭建的服務器端口爲localhost:3000vue


二、安裝Express

按以上兩種方法搭建好服務器後,在服務器上安裝好Node.js,打開命令行:java

npm install -g express@3
npm install express-generator --save -g

選擇一個工做目錄,打開命令行運行:node

mkdir server 
cd server
express  -e 
npm install

安裝完成後輸入:git

npm start

此時便用Express搭建了一個服務器並監聽端口3000。能夠用瀏覽器打開localhost:3000或https://wx.test.cn/進行訪問。github


三、路由控制

初始化項目後,通常工程結構以下express

server
├── node_modules
├── public    
├── routes
├── view
├── app.js
└── package.json

咱們這裏只要關心app.jspublicnpm

  • app.js是工程的入口文件,待會咱們在這裏編寫路由控制;
  • public是存放各類資源的文件夾,這裏能夠保存image、css、javascript等文件


    (1)首先咱們將從這裏下載項目文件中的public文件夾,與原public文件夾合併;
    (2)而後打開app.js,在app.use('/users', usersRouter);後添加
app.get('/public/images/*', function (req, res) {
    res.sendfile( __dirname + "/" + req.url );
    console.log("Request for " + req.url + " received.");
  })

這段命令的意思是當客戶端用get命令請求/public/images/下的資源時,服務器將對應的圖片資源傳送過去。
(3)中斷原先的進程,再次運行:

npm start

咱們能夠在瀏覽器上打開網址https://wx.test.cn/public/images/my/user.png,測試是否能夠請求到圖片。

將小程序中原先指向本地圖片的連接均改成指向服務器的圖片。

此時使用微信開發者工具再次打開小程序,便可看到完整的頁面。同時也能夠進行預覽發佈

相關文章
相關標籤/搜索