Node.js 蚕食计划(三)—— Express 启航

前端之家收集整理的这篇文章主要介绍了Node.js 蚕食计划(三)—— Express 启航前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

如果看过上一篇《Node.js 蚕食计划》,就会发现手动搭建一个 web 服务器还是比较繁琐

而 express 就是一个可以极大地提高开发效率的 web 开发框架

一、创建项目

在 express 4.0 之前,我们使用 来全局安装 express

但是 4.0 之后,express 的命令行工具被单独分离出来,叫做 express-generator

如果了解过 vue,express-generator 和 express 的关系就像 vue-cli 和 vue 的关系

然后可以通过 命令来验证是否安装成功

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" alt="">

然后在需要创建项目的目录下,直接使用 express 命令创建项目

上面的 Node-Project 是自定义的项目名称

命令执行完成后,会在当前目录生成一个 Node-Project 项目文件夹,目录如下:

进入项目目录(cd Node-Project),安装依赖

然后通过 npm start 命令启动项目

开发过程中建议在 debug 环境中运行,所以通常使用这个命令启动项目:

DEBUG=Node-Project & npm start

然后在浏览器中打开 http://localhost:3000/ 就能打开项目

如果 3000 端口被占用,可以在 bin / www 文件修改端口

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" alt="">

二、认识路由

生成的项目文件中,有一个 routes 文件夹,存放着 express 框架预置的基本路由

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" alt="">

路由一般由一个 URI、HTTP 请求(GET、POST)和若干个句柄组成

基本句柄的结构通常都是 app.METHOD(path,callback)

其中 METHOD 除了 get、post 等 http 方法之外,express 还提供了一个 all() 用来处理所有请求

express.Router 对基本路由做了封装,实际项目中使用的是 router.METHOD()

上图中的 users.js 是一个最简单的路由

SEOMD4wHFC5fbZAz574G5r8+EeqGVm530k/Mr733KOjXqywR9U+0nx4ebh+KMpWwyq/UGFVcOxUXt140U0EgbpnyjA+MBxAtfxR++bDrWOLzV7X0XC7584Wri3K6cVYHyEEEJiB7/xEULa2Sdvo5EXPjM4/6QAxgeKdpnvLxzd35lV8SXAxvdMC48yV8cSbHx5j4gvgdb5bD8c3fOC808IYHygyFA5n0Yj4Z/vaPmT1Ewq/EH14rTg6HJ1TBFPBdX+oLwzRZKupZ+ikfAzJ2/5CRwnsjV+/eWRgM++fFnCeFeiJn32wG1tPfW/oNnQ6r5t28Qx2e8s98fVanp6gyngs0zWodJGjfvuRMBnD/hs5GV5aVZZESjG2qZ3zWSIIEND06vqZmViW7NniAwRjnlaxaO6bnyXIHcN7dX4f8V4iCBXFejzOtvWEBkiyJDZ4amrolVmFPMXyZDhPEIVwy2TT81kiCB3L1qGGU19YUvi4+4tQ39/UiBAWdW/anSHCDJEkLumG/NVFaIsExw6GVwOkbx2ctaKL+jm0vBMt5R9sYRSy/jw2nf2gM8e8E1sLlkePhi+XkdtHLplx4eI03zFEvDZ3YbY/3WtD/GvxWcP+OwPryRHdSom79oDt1QISUy24TWck7vdJkYcXtDc3bf8Hf4Ko8u3tN3JUfrOlZfh6P730ynrpJflvMYXndZNV3m2G/xBtX+71uWUKBNn4vSwt8EfrHdcpqXXSReDav+6tAFfVY10MahenBbIeqVzj8/6g2p/sHZuWiSj55BU+9elSoSarskX8YEeVw23M3IhT3z8rGelvCcp6iLUSCZWar1BtT+o9m/XTFkFwiwTIIQQEljX0xkfSb8K7IejLx90cW41PXgVCUdfPoBGwPEg6zp+jXbZZw/c1tTT3is3DjKKAebdi1+bN2oTIjOYAj6b02baZKQZdbZlng/lvJHEloy/dg3nq2ObRVLzDkGGLpr11P/tj4bI0NC4JZ4JxXiIIHeMDuZOXKvVcWcr5i+SoW6Lm3UgY3+89NI3sj7OPARCldW2XVYCYtyCskhwFKS9HDKV+wH7gj68QiuZJEpnUgK64gtmfGf39F3mURL1DNRyZYSdhwemIRljL/p7P0fC77dGcz1XnaTSjy0Zf8VtjhA6I3Fsq/3b8p4zCCGERELrutofVFh1sQQa6WJQvbKuWGHspGFxUkA7hNr/uPIa60DbFfrYUWSX5SusPNAPgeI9rswEmmwSZMXY1tto5Kf7eo5NA97X0Ug4GgkHp3LdO1BIso/qCCyz9oBveFTOemfQEq/312ndt1pNqhJc+SlXNZEP7AHfRVP8EwYTVQw4W41yAUJI0W3a9NkDf6JV01PS0ugIEeROS/PnAoQQKhM3z3e7QsScuzyRBut455xShKQWgztEzLkrabtQjFPlRLd5UCxESNhSf2OXIENdnbFUivmLWMFzq3XKSoSQQOW+SIYIhwN/MVyoGInBUrEIISSoGGyc3CXIpy2J9q3FQIaIySmcAAmry8+7uy3DtFykTZAOZY/1qpXrNaSRpf80Js3lEAzdGg34RkmTvEqIEELlKrV7iXHF22zWgM++dqupTSZACCFhiWnclp3x49S1PkxhfJ894LO6uyvKEUJC+fRde8A3cr0m8cHA3S5jjUCEEBJKjFfMmz77mo1Rz5/ZiUbCz5y5VTgll+XeoHrFI2nAQi8X9pC1/mDDnDWRBuvY65HIEGqYVviDDXPXaLvQSCnVPq7s0SGEkLxXthhU+x/LmmJJOkmsYKVrukReipDodI+n3h9smBrEBxU7ttX+7aqBdiRECIlQg7XSE1T7PZL4DaicVviDdRODCFfbJY2iAbd8mCb0tAmyQ3Xnp2gkHJzh2obr+Hveq1DHPxbkEMcXtfVt0mv0EjXps2/eUKaIRQzdsgd8pqH4/wZTwGffvKWqSiRRuX24zZ4JivmLjLo2QpR/dxppu0RVU71kiHCQ58Z3CXKnkZlDxXiIHuSJ75awDTP+ZYSGWhod8XdaGh0hYtrBCOMo501kyDgYHwIy2OYOEa6Nxma+oixtgnQUzPj8l0PlTrq+om5TwGd3U42A6ukH9sBSF93ezVcsh2P8kUnab4R+lOYrloT94x9ZYg30HPC+jkZe+8z8JyMVnWQDva6NEEIiiSNpVI/OrfQH6x3T5YtB9QopZlwHDTPIE99tUPGlJv6v2h9UMkJDl+X+oJp657LcH6y/2c/IWI9H7Q9WxuvY8olqf7DBQ9IjTgzSJsgS6/r7SPiN15Q+JfCRyannVun8LhHYKTcOJgVkBM3d3feXRplNbLbxOe72TDm/yo6ExAI7bcxh3DiYQzAsTIGjOo0K+nsWAz2oopi/SIYumnlG8OHEXK8h62AiA1qPCb/v3ukipqoUZay9pE1wBKS+HFwxOvyiSn1J0/2k0vqwjM8/Tn/oFncmA9/1GROpKOPnpiYc1OZ6eUsZDQkqmKP2b1fqy5n7wMZnlhDKaQU9qNJJpgqdUyNHOV7Vw2cTGRhewUEhlWel0moVyVn1sbQJssPkfQPGPxnkNlanzWaNBXYElll7YKmLLnyOcOpHMj4VzSfIkInoZe3jaIyPEEJCdWWPuyvWyXzJZmHfXGkTHDJ5Gr+m9eHJMv7bTSvPTlKTsfHPiB3beFPVhTPMfRyN8RFCCEl0Yqu7mupkDtZ8qWPvKm2CjDGD8U8KOY7OrGt9iG94iZpkD92pdX5nD/hGpnWSeIuRM6qTh/FV7kv0gDsfynkjGRqyWRTWXWa/LkKcxtd6hsjQpXjZkMb4vS2uEHHDnsUIPnFv4zQr0J9lgmQKFtXhvRySpvs++5qtmmczokJAtB7UWAQmhfErrt8eLazxDTZbwDd4VcKzOcbMTjQS/vlObkMJL6wwAu58dJJKf1DxZX/pQlIAh8v4p4e9an+w6kJ5/OOpjC+5VuUP1l3jHhjDjXywwhNU+1ckfCcnbYI0SJ1PeeP4wPEi1/H4kuu37YHbmnqDKSl4qnL77IHvTBa5ACFUKpObrpgeFriOHwt/t5zvFPHNkhEPt7tChGtVIWX+HQMbv6W5mtH3S7dtGuOLqq27BLnbTQyXS3lCMQqHYXxeoVRSpYKwupLYIchQuzbjBGk5fOPja+2zuk3Vam4jSEZv2wO+UXe3pDTRr8tQPK7RPxyvVeCBnk4q4ldA4+PupU1nV3zIACfUWJ2vcupHrJmsweFvTSNvGuWkwh9sWJwWsv6mwMb3SGTY71TfL6PfNbXx0dmyhaDa/7hyoEsg4WkM6p3VE9dEyljzQtIocWyr/etlNRknyI4UY3VQl/PZfjgaeR2YyvxHDRweOc/AKjcOBnzm+7P2wKyaGaqUXHVytq8LaXwkOr86lBxRSfSyViuYo++pgL7DEb/TY2N1mCMvzbRfbRrjIyS1GFzJO6G1G+KjfRgDQD2JHtK0CY6EdJdDpOIM7CQuaLmBPbLTfcvMqNQ3dq0xP762ZKUfFBcJyS9artIYH6GSoVujyXtgFx4ZjcfnPRNC63pDckQl0cvKGn1PBfSVU/E4X3ysDmPkpbyTFvxJY3xqCFDSTmjththoH8YA0IWJ05knyIbU4/FndvDozOjLB0bOBMCRkvucWzzritMUsurEbJ0HI06TvPuKpcDGR0gkbnYYYrFvlvGlgztJQ+PxDKyE01nGH5rbaG1vYYRo0hofIVTRrx7fuuTmMT4qK20ne+eoTJrdO72WsVJGoyRtgqMgg8tRWqeecVo2+YpwhFouD+LpV5tLg5M6SQszjo8QUnf3PcTzs74bcXZLSxu71gpsfISQpPuyafnBRCrjx+bcLqWcVZTiTAh6nNWebRWH8cvFU9tJQ+NxGRB3Osv423ULZJmulnGEtMZHCCmt5a51JZ/xUW3JMFmzQgXoz6545cO9TJunTZA5LXdSz7k1rbwMRyPh6J53IMcjAAWkeJ+ywNVzCxSK5iTjHx+kX/j2wtH9p66PEWbg6rk9yagcwf1w9OUDPpvLm764//xtNK9Zb0ABAeN/7Hx8mhxn4yMkNXvfRMLvf3SmbL8dCp+W8VM/O9MRxPGcSDi6vzMLYfxjARj/Y+fj0+R4Gx8hqdn7IhoJv9qwHrH0PyHjy7/0vohG3gZn+FzuCEbC0f0Xz7yOAa5VCICPARj/Y+fj0+S4Gx9h6b9aPurVPD4h48MiYieR4jU+AABAsQHGBwAAKBbA+AAAAMUCGB8AAKBYAOMDAAAUC2B8AACAYgGMDwAAUCyA8QEAAIoFMD4AAECxAMYHgBON1hHcS3pqjfSLlZd8j7sBihkwPgCcXKRf+F6Go/s7Lj1T7lrr5ssw/zPOgKIFjJ8adbV169K0A26bT4BBzT98sJ6KvX71gfjfPzf9e+5ru/LzP02//dvI752HsGcWKR9dqcXPMfaC8wEaYPzUtDQ66EtrAScYpvGpV7Tr3xoKfSBnz6kP1t8duvFVMzvvI+FXy7zribc4n76PhN/Aw86ABGD81IDxPx0GNf/wwfoPG9Tyv38kzv7ub9ZTH6z/tJTF4vQZcTTG/+/NvXB0b/1qqt9m5/3n4WjkqSu3hdyBT5BsjV9/eSTgsy9fZi5xjVdAvK2tp/4XNBta3bdt1CJ531nuj6vV9PQGE36Ubmmjxn0Xr1FnIy/LUyxIzUZq3iHIVQUSibXu3rkQQYYI906rVklLwlgW0ezaMvT30xeCTn5astS8Q5Ahw/nE35wvnIBC2FJn2xqi1izcMvT3Mx+DazHgdROFnarxHZyTSzcc5Ue9rqFI3DzfNbdLkCGC3DVNknWKxFLs4v6tpBUi9eccIYLcOacUIZRY/VHUGN/J0y4z42RmcDmQQDHWFrscQ9Or6mbGVpygdfJpbAHIrTbWIpQIIWFLnWXDRK0xuWu0ZbdCJNP4CKE/LvWdYr6DkOA/F9p/+zfLrz5YT32w/N3fTP+8UMbaw6ln9GdA1/3ug/XU3zT/Gf+b80UliNFR/Yefzf/rg/XUB+v/Yh0C4QJj6A+DCP3PZ797g3NC/NMj1tqN0qnv30fCr5bTrN2YOtnA8otoJHz0j4wGPh5Z1/FrtMs+e+C2pp72XrlxkFEM1HEshL15ozahCIMp4LM5bezlsJ1tGWdDat4hyI1WguXlLXVsUXDOpc/pXiuE8fWNjlSHwMa/ZHOzFkAfsg6iI4TrVOw0KuPZxCsAx1eBF+HvnljkXTF/kQxdcuywdmIcTCwmkvZyIOW8kZ2HXcP56kQuFY6kBKzVC1qSz3aaVYiZ8Bj/Hx8lhPsfG5d+leTrf4x/pCDG19X9Lsp/CISNT/w+0PN3jDQjv3fQv8zY1tto5Kf7epSO0cB+OPr8HldCk28Pr1G1M512N8AnQvZRHYFl1h7wDY/KWe8MWuL1/jqt+1arSVWC6+zlqibygT3gu5iINxpMVDHgbDXKBQghRbdp02cP/Ild7eMlbmSTbUwqFiFUVk7sJDQkHusiQwT5tL1dL0AIoTJx83y3K0SQT1tiDdzUxo+RKqpDmZEYLBWLEEKCisHGyV36IbDxCTJEuDYam9UChFDFmMEdIsjVaq4dJlPXY7Ve5Xp9oZGl/zRCCCGxxeAOEa5H9cpqAUIIVUrbV01kiLgxlqhBSy0GV4hwP6qTIqScv0iGiBv2RLmlmL+Iv8Xcap2yEiGRuNltJEOEy13JPBW8l4OS9U5L8+eMyzHnLmfs4WmrFmdSJKjqrbetqunGxwWPZViE6/Xizyt7PIb+XI0v+K/rmt9GrVRtGvM/bb/5YD0VvfCH62KEEJIJ/nOh6zcfrKc+9P1LQ2IP/MaPkSqqI/jXZyOnPoz8n6WKP1YhlAguxQ4R+/ipD9a/e6X5t24BQui/Fnp+/cH6q2e0s2Hy7YWje15z+m+tuvs8HI3szHJtw3X8N14r1PGLhhzi+KK2vk16jV6iJn32zRtKEf9Hhm7ZAz7TUPx/gyngs2/eUlUlkqjcPnvgVsbxRnY9FCWCDwghQecGQYaM/YxQkqDzEb1WmLfxWxodIWLawQjjKOdNjMqvxUCGCNeqgvZ5xXiIIFczXHqrAMY/v0qQu21a+tUR1Y0nlTrNniEyNDQ+3+pgZ5gyPuMkiKizF7uAqS8H/pt1OaTmHfoecHDJlCJQUzHVi0sdRRlPijRw9NyO/HY5cR7/I0AkVaXRfwTMCX3nb3xZ3e8+WH/9A/PyLzDTO3tOfbD+3bO6P7KOQj+uIxgJR390ZmLqqxtvo5HXPt7+XaCoyKnnVun8LhHYKTcOJgVkBM3d3feXRpmBHbbx3YY88k35gkec3FuxMsYt+L+8jR+rvyfHjhJBG4uBdsSPAn94akvFCA2LYil327WVjF1g4zO/BesMp74c6PwqTx5225rjifSqSdxJELo06Wls70xaGFAk7d+gukzmNtrNY+UVKSoZHLCNb/79dcYO/vWZ9dSHnn9lfeq64dfxlkH+xuccL/TBeuqD9bfL4vQfj+MIRsLRJ46UaSgGvK/B+ECM3MbqtNmsscCOwDJrDyx10YXfcmUkkBTHPzbGtw3j/8D4TONXK8Yp4XZ1MmNOR2R8hJBIoBxutMX7ZrcakxuOYr3C7OmlOpBDxsH0gew4tKjOH4mG/xO1nvpw6Q9EYnsK41Ox/mNm/OcLmbSJzWB8IEGOozPrWh/iwI5ETbKH7tQ6v7MHfCPTOkl87A1nVOcQjY9DBKwwgqhzgyBDvbE3k4yvV0/vchvf7alCyfS2uELEDXvKoX35Gj//qI6gc4PZtcAN7t01Dg6qpln9upzGV6unQwS5UR+TVBrjq9yXyFBXZyXP5mTKxOc9JjLV6RVUDLfNMfKQFtboTGfPrz9Yf/WqIR48+bcfRniiOiO/v57YA934f3QYfsNj/ITB6TQ0/NMH698H5BybmB9PY3yTby8c3V+/mjIRQgghqetH3jg+UHzkOh5fcv22PXBbU28wBXwj12vom1Runz3wnckiFyCESmVy0xXTwyOu46MqPPCD3lXoNuKKLTP0fNHSL0YIVfQ3xkIKTONX1t8IEeRuV48+ST2iausuQe52E8PlUr7I8sc3PnUq5lbrGz/nLZzwOBnclKH/TW2N9eWKRQghJNbX2Z4SzL7fNJcDDba5Q4Rro+V8p4gnTF9t2Wrt6S2lzqRIUDVmcIcIhyMxYldL9lrslYpq6qDiz+vHd+k9ARSq0fU3kXA08mKFPdmUPVZH/P9eWRM2Rwg5DL/+YD0V7ft/hAghhGSC/1zq+fsP1lNRw79RH6r7HU4wKEAo3q+bZPxrbX//wXrqb+2435WJ+P++sZ76YP7dkvy/+GZ+ZTScf2zrbTTyYqUrdSqUcqwO6nI+fR8JR/e+n9ZybQY+QXKegVVuHAz4zPdn7YFZdTlji+SqMzmkc8TGT0SlWQMKaT98ldvE3Gqae5pkfKq5wD06Ew9xSTWm8ONHdfhOBS1XeIxpbPR9LP2QbZjyVXysDv3F7N1Ndzm4B8vSyxXFOEfYp5feSuMMDU1PsWvSs0/wiMPwGy8rkJE0OhNda/vNB+uvXn32X7Fc/uuzkaR4C/E7Z7zBI/iXn1lTds2/iSYZX1b9e9b4S3oCQvOPHFEdWjQpI+MXZDx+/Fy9Wu5LvR/gUyH3Obd41hWnuGXVk7NWPNZ+88GI0yTvvmI5YuMjhMpK28l4wJdryo+otN1z0R0i4vN9VO5LScZHqLqyf9Xo5jI+QqiiXz2+dclN19BxMz6Knwozh/Erq227BBm6SB9mQ83Aio2XZxnfvWscd1Qxe00zuByMCXHJxmeeyd1LHNdLWdW/anRRFxRPqeMInGRex0fxsZKJSI5M/O+Pev531HLqg/XUB8tvXrX/yyCznq6T/+Fn4v/DW3/W/HuH6F9eJRkfIXTx7D+/ouZYcTQCBs/+86uhv8vL+NSc2/3vx1KN19HeTT3n1vTgFXfpCHyqwFMWgHRw9dwCH5+0j81J9+AdeZP53s/74WjkbWD0sDIJHDPA+EA6wPjHFa3rx7fRyOtcnp05s4PjOdFI+P0TRxbz2ICTDRgfSAcY//iCtb7/9G4f0+vy/8bPzWevlBJnZicaCb9/+dQ3Y0o5cAj4xADjA+kA4x9rtI7gS441sHywBhbAARgfAACgWADjAwAAFAtgfAAAgGIBjA8AAFAsgPEBAACKBTA+AABAsQDGBwAAKBbA+AAAAMUCGB8AAKBYAOMDAAAUC2B8AACAYgGMDwAAUCyA8QEAAIoFMD4AAECxAMYHAAAoFsD4AAAAxQIYHwAAoFgA4wMAABQLYHwAAIBiAYwPAABQLIDxAQAAigUwPgAAQLEAxgcAACgWwPgAAADFAhgfAACgWADjAwAAFAtgfAAAgGIBjA8AAFAsgPEBAACKBTA+AABAsQDGBwAAKBbA+AAAAMUCGB8AAKBYAOMDAAAUC2B8AACAYgGMD8RQDi+sr/lXv9JLDu0QEv3U6pp/3T2sPLRDAADATyGMLzHOra95RhuTNiit99bmLhyeP4CM6HSs+dfjr687eZIpr5I4jYMvRQGy8jU+xOLV4618pXVxPaNfruTCnH/9/rWmw88SABSCAhi/hnD7193DNYl3dNedE3o5QpIL32B91FxwuK1Z3xVyHfGV69uH2BHeVbeD0Mlj2+J6YrzuWbFImI5jvg7RZ8eUDI1P1fG/HdflVkbLO2/eWV6wpFQ5ruOvOgeOqfB1E38e18txJebrToRQjdFxJ8Uvt2b4zpr/Dv23DwDHmvyN33jt2zX/N0aaJeSdU6R/fW1hVDfgWJ7o6Z76ds2/Tt7Uy/l3koRMf/NbDl/HdQ3Gz4FOR0rj54nSunj8K++pkXdO3Vvzr7uvtZocq+M9PV951tf89+y8v9wmm2cdWrHASSJv4+vt3vWHN/Xst4XK7ql7WLLLC9e7lcKsdlozfGfNv77m//argXM1+H6S1GgGrrsnYgdSXiX966Q1vV6U1nuJkqDIAeNngFDZ89Uirhysuid6Uv1y9Tcf+h/Zk377AHB8ydP4kgvfrPm/tSU3e4XKzmt/Xvavr/nX789d1WVTvcelyJr/23EN/912BMbvdKyxDoEbFoxGglDZc93peYTLtocLU8llm1x3dY5K8Oi+i134dTqwJYWNAw7Su77mX1/zfDPcJGTugfh6IXYIzzfWLM8m6xtxGD+TsI9Q2T3x5/s4h/5H7qmECpXWe3wtqsSumG0yjgvX6Vjzr3+lFyp7ptz4KN57X/WwwiVynfWbWB4yiVPlglDZaXOt4grHnLWV/1zzdl8BwPElP+PXDC+sry0Q7PsSR3UWr+sHHA9vDhgdq2v+R1lEdXQ3H/rTNZaPh/GVXybJjlnJlXU6lpNDTw30g6yvrUzZHKuMNN5Eo0min0raQ66BqdyNr/xyke3Z+JkpoPHve1ihPHPlghrnk+oo+UJFdcgJvcnxyD5w4euV9TUvT1QnufsKAI4/eRm/afS+n2NIg6RzynmtVY6QfPhOouc24/EM2CDuYeo263RkHMfnCikcpvGV1sX1tZXrehmu7kpqNANfOYjEBySdX3vX11a+MTXgFBJVz9R9ZmEW+3arTmurXIgQknc7Hq3517/S0xP8eZiKbQllDZ021/UcAwlpozp8CZRXSf/68gT9i059zR5hmVlUh6+ojpU6yy7cIpQ0Xru35l+/Hy8e5YTbv77mudkpFyKEhPJW2+J6oXtNJZ1Tf7bp5AjJhxcSPbccTViu7isAOAHkY3z9zUf02mgyuY3OxMaPe+cYG1+OB7d8xRfs7XSsJcV5ux3ra/4pfSLJ+pp/9etOGeu48a+vu/mIKg+y/wac3ygX41O25YhZ0SiE8RevqpgpE2dbP8W+HIfYLZF2dCZP9xUAHHNyN/6hjUTGxk+63zq/TjL+R4/qoAbCuULFH5xTV7ubGFrmD3fciTVgsPFTRmlkeruHip6Tc6PDuiw7wZO+US7GR0g1TPXKrHn+/JW1p5Gj/CmA8VOd7RoLDhXqGHX8Vc4K+GHD230FAMecnI1/iCORexxr/uQK1LE0PkIISVSdVxPzBhYs8VpqYYyPEEJCuWbANneHOsTKFL1JkO03ys34CCEkaei0TsW7qd1fNjA3H7LxkQTHuxivpD6kI4G7+woATgC5Gv8wRyLjGIL/GyPDax/f+KrhOw85jB9DKO+8+S29dSK58E3aSmhmxo8jafzyzkP/+nJuTas8jR9DKO+0e9aTothK6+L6mvemLvWHc6/jE27/+vLiHWqsjvdb5wR7KM8RwdN9BQAngByNf7gjkSWduDa38merThnrLbwwd8TGx8ZZvK6TI4TkOmssrJHws3584bpJE8shktRccDz0r5NfxkRUQ4W/TZoaPj2kM75y2OGwdjbIqM8LZZpR0r++NpXTqc/Z+Prr7okB+hc1Oh6t+e99yTCuxDi3vuZ/NDfQkMsgq3TGr/ny3pr/W5tOLpfLUsa1JLqJe2v+9Ye0xlZhSdt9BQDHl5yMf/gjkRPBa+Yrwzm3NPKYgdVkY+XB8+19hvFjT4lhRWxoHlRxBnZohk9rfGvSsMg1/6o9TUWaAaPrm+tcpu3APYc5KawRmzeXeMULD74AV6J0SWd8yYVvkj/+0PONVcOKcMUvyuFMu4MH6QAnmlyMf0QjkeW6YYd7JRa69X7rnLramZj2cwTGR6im56tFavKUe6pHKWyyrTB8LdcRXy+scj/5h4IxRSt74yOhsmc83knANYcrLQUwPvNaPFy589JfN24AACAASURBVPUw59ghmWbY4abNkCqg8RFqwIXfw5XYCee+6Idbx4cH6QAnmxyMDyORgaNHd3N1zX/PxpiNLNFNrK7Rw2iHDjxIBzjhZG98GIkMHD04unVvPN6vg4QyJR6g+SirGFdewIN0gJMOrIgCnAR4H7GwPHcBQiwAkClgfOCEwOzX8a8/9Px5fKCpAFORAaB4AOMDAAAUC2B8AACAYgGMDwAAUCyA8QEAAIoFMD4AAECxAMYHAAAoFsD4AAAAxQIYHwAAoFgA4wMAABQLYPzjRMvMzpsnjpaPnY1PnPK2vjWfPXBb23z4x9I6gns7s9rDPxDwEdE6gi9PylUG4x8bpGbvq0j4/ROnXpq8UU82+INqPylOv59yyVxQ7ZlJeqTyYKU/qPYH5YeyFHgcSfeVwYffTQR89oDPHvBZJusO9XC5MHTriPIm/cL3Mhzd33FxXVHgk0Hat/BsPxzdL4D0W6zeZ3tvo5FwNLIzW4i8JXGMjV8x3Da92zt44mu8jdr7S6NOQ5pUWkdwPxx96TVzy0E5rcjQ+DWTNf5gzfDZpA0a6eKhG994YzTm+o9j/HpD3/KD4espD4rr+JtOzeHW8bWzT95GIy98PFcUOEGoHL1zu23n+RPEqmv5NdBN3jeRcJR6FZ/xFfMXydBF84k3vsEU8NndqY2vwnZYMfElwMb3TKddDEV47bHa75FwPMEdG39d2pC8qUBImu777IEHg1dVAtGhHSQ1zVcsx6NhoZrZeR8Jv1rmvaLACeL8KkGGDCmMj5DU7H0djbx95sy9nm9cfhGNhN9sjHYd4vMBwfiHTgbGH1l/Ewm/2bDy1wZrJhX+oHpxWpDmYP0V3mD9zX6uTZoybPzDWAsQU9f60Gd/eKXi0A6QnuNi/P/e3AtH99avQv3+kyAD4yMkHQ3sh6N761/mepQB7+to5Ke7h7Q+M0UuxleMhwjHvBSVlfesXnSHCDJknnukVpXRkpSVtpO9c7sEGSLI0NDcRmv757TPz18kQ8S4hZbeYiDxPhFCLY2OEP5g0mtVQfuMQDHWNr1rxoeYXlU3M1QmNe8Q5KoCicRad+9ciCBDhHunVZul7iTdVwbXvrMzIxV0fQuau/uWqbD16PItbXeidFa5fewPUq+7rYx4gnR662008mKlK1VOLsszMf4FT4P/sYxnEVax46MZf+gWO8LTfMVCP5NDt+wB30WTUGr508imzx7w2Tfv9g0lP/leKLWMD8euyOjyn9Rq2qG5z/at+B1UMXmX/ypQCJq7u+8v4Qs6sbk0PNMtTbRX8BccqVDoWkkqjY28Ul3F3ol06vv3kfCrZc4AWga3j0jcPN9F3T67pkmyTlHG3IdI3OwwxH78ZvfOxbmnQzYLKhwZ3T7Cljrb1hCVhy1Dfz875ihsqbNsmNz45t012sZKs1uwM5NM7jQqlFXmR6bYmWxsrGamSmwl3E97LYw8iPu3CDI0NG6htUn15xwhgtw5pxRRXuJ8UbJi0rX8Ihp5G5jKsZwf8L4+tGBOnFyN7/K0jO8yToHbEzvTIql5J/kcGc2xtYMKYnzlvJG9dddwPnGxpeYdgtxoJVg52VIn3Z68CEx/GuWUSNxTLVdG2FsfmIaopbYzNv5oYD8cfX4v/6WVzpYtBNULk6fz3lF2GEzcX5Nm28yMb11bYn58qauNfiCZyv2A51oUyPgcF9Rnf3ilghJCXetDn31zybrJTEAaWQXx2NbbaOSn+9xXNN3tg0TnV4fYv+2dRmVCStL+LXPy3TFecOOnvn30yfcpu50cN3Jhm+xS8w5B7prmmGeSfFSXKHmqFazzzJZ1dd34LkHuGtrx6afcFZNVlsZH+ns/R8Lvt0Zz+z7m42x8MkSQu93mQbEQIaSsG98lyFA7jmCp3CYyRLg2GpvVAoQQqpS2r5roVyKN8eOHSRHVwT+mnZbmzwUIIVQmbp7vdoWIOXd5LEW81DHZxqRiEUJl5cQOQYaMGXcFyzXLPntgqc8kFyCESuW103ftAd/waLziiS1zt8tYIxAhhIQS4xXzps++ZmNG4dJFdUzeN5HwG+8XGWaLn6aZWn+w6kJ5+pSFpWDGtwd8o/ev1CoQEknk03ftAZ91MtHEFQzdGg347JvOVnzCRRKpwXRxmlEmZBjVqZi8y2X8xq41nz3wwDypk5QihJCgpfvims8e8A1acL9IvFxZumipEyAkqDeaNn32wC01o9/C5NsLR/e8Zu6Dp7l9xBaDO0S4HtUrqxm3z40xqlgRj3WRIYLciv34RYKqqe5DMX6q24cyIzFYKhYhhAQVg42TuwT5tCV+wRTzF8nQJcuwCNepxZ9X9ngM/QU3PpXJUiFCQnX9+C5Bhgzt1OUQnF8dIkNDN+zl0jKEEBLr62xPCTLU1VlJ24vF4AoR7kd1UoSU8xfJEHHDzu6GyiiqgxBC1s39cHTPO5D9l5F3jW7uhaP7349l/9lsyNn4jAo1/YxUEk8JcrdNyzhp5cTTxCnL3/iK+YtkyNivpr9HNfGq6P/SGhapd8hF28UAK0bBdHfzFUvAN3KdEXmomFxKUkk648/sRCPhZ858I76ikpvbaq+7JM/d5EO+UR1abTopAdUtfLcj9eXLx/gGmy3gG3Uyi5A2m5Xdkkg04xDVkmPtyhGMhKM/8l3R1LcPOr+adPuI6sZDBLmKPyDo3CDIUFcnPXZhMRyO8flvn5ZGR4iYdjDCOMp5E71GVTHVS4aIudWkkFSBM8loWJxfpbUkRIpxRuMJIUSdK9sw471mzxAZGhqfb3WECNeqIvnCZWx81d3n2Q+zmdmJjc95EZg67FH9ORufEVJPv7XZMxS/Evkb//wqT9hnty1268VifDl8P4oaXIXvNjLq+LbpRmp7rFqa9Pquz0jfT0bGD87knlGEEEISa5U/WHutPc/d5EW+xk+VAFfA03YL52P8oVv2gM80xEqr69uMHxcb/xa9a43X+E8cPAdPfftwRkRxREVVgRBVo2L9sA/J+CluH95wx5B1MJZGJO3foKL8cxvt5rHyigKP4MLniiFihvH548PTU8wuh3ggerddW4mSydj4aPYJGB8hRBmfKv9PiPGRYOjWBNvmtzX1sc0FNf7Pd/LroT897FX7vWUfd5HvQzU+3bz8HJbxR6TxL5ih8Z8v8FzRPI1fbQudEOMjhBAS6xVmT3wQh3Ew/94qViYLYvxEuJ/ZeGLsNhPjS10/5jaUXqoyLzzLb6hPZhTe+FXW3eRmKRXqwfdFkvFFWo+Jx/jsHxBG5b7ECsYlUYA6vmbZZ9+8O0KNdpnOen9cTY8jGWy2gG/wKsfIdyYGU8BnX77Mm87kfRMJv9+w5p5ThNplnmDDXF67KABZGL/i+u3R7IyPm1yzTal73puvWAK+UacudUa5jW+8MZoc1THYrIkdZmh8k28vHN1fv8p98NS3j6BzgxENTwJ3V9LvL6qn90iN39viChE37OkGCycQVAy3zYUIcqM+g2njGZLO+JX1N0KEy51KEwih2Ak0Dg6qptmd5PTd9jLDyJx8gbtwcojjI4Subrw9xj23vD9ZpPUMkcyup55Hl8gQ4fLEblaLgQwR7g2VogyhslKqXzfJ+GJ7F06mTL5kg23uEOHaaDnfKeIZ75Wp8VWj628i4WjkxQprbmTzyEjAZ53WSerlJaVcnxS19W367JvOLpOKOwEF7g+MRYc4GA3sh6MvH6QcnJkavbvev12hz6/RjOeIhvN4sA+/8bG+H47XKhASyWsnnaOsUU/pjY/k00v2gM++9id1m0yAEEJCSXLPbblxMOCzb85qWlKVxNzGxxc08GDwKnVBBS0m05rPHngQa7RlaHw8VodvuG2a26fKYSRDxNxqfePn3L+XZs8QGSIc8+ViERKqq8xU5CTZ+FLz8otoJBx9+SD7ab/pbh9RtXWXIHe7iWGqUzQZLdlrsVcqqmMdzp/Xj+/Se9riR3rwivMGzDCTKYxPDb402eyVVfzaVziMcfnQ/6ajcl8iQ4SDrKpI3SeR31idYz06M8VPlnNEFPm0PdFVVVl3g7nV9dTkTj7RatU0ayeJg3KNYGPsIVPjzz6hpjW/8TKnR2J3MF8Tm0uDk5p452gJHj2SPJiPeYhaJ2tMYS7j8VPA9yCdLHEEY8HElb7c9pBiBhYu9mivtSVrlsZHIhXHEEx2uKxGs8w3OpNvBGfC4JwX1OY2lDD2kN74acfjp7p9uAc304SeFKxwrBrmOIzft/KS+m1n30uU/vbBQ1zY+aR9hDP0yg6nxCaaRlP1fKTMZCrjcw4hZX4EJ8Cj71H85A/ZhpnF7WCbi1c1CT7l8fipfrIIIWVV/6oxNvOCYwqJtL/xxlMz3npjvqqiuv4G10mU9qvHt2hmpx+UMQkld+Pz1vFjw7cnNh/YmOOv6WKSdF82LT9ghPuTlSeqUc84aYO4k2qXI+tvIuH3W6M5/VJ4H6STLS13fopGwtHIa1+OjwZIOedW3d33kIqPjTi7paWNXWtZGh8hVFqnnnFaqDOZFGfDVGm07tujORkfUReUmlI3sebsttTRbv1MjU/Nud3/fozjimZw+1ATGBm/bbrQpYOt1C8fT2viieNLrfi3fSjGRwhV9KvHty65eYyPJeCiKn9mF9cULZzLzb1DMz41C+yim9P4ldW2XYIMXaQPSaJmYDEHUyGEqiytk0/NqYyPv0i+c26Po/GLA+ON0YDPMt1IL+sFxnFbIN6PV0C0rh/fRiOvc3nqFv+DdLJD3mSc2XkfCUf3v5+GZwPkTYvz6ftI+I33i6M4l5zGl6pa4gGTPCKGh4xUpf0Ct0V4mkQnhoHlF9HI2+BM7kMw8FMWeCbuFQowPg+4gm+Z0UmrqHCJoKoOD9BM2zGYC1rns/1wdI/v2Zm8pHiQTubEQ1vRyNvgzMl4zvexJ49SPFuSjD/gfR27oOFXR1Pq5AD9UZG8T409GRTk2Zn6pZ+ikfD7HxfMqsM7F2B8HngfsbA5q65P//EcaJnZeR8Jv/9xwXjkP/3ZJ+Fo5O2b59+7TIf41L6iAz8Be//p3b5DvqI8xn//8unKaNvxFSk2/v6LZ8ujJ3oFAanemfJR5xmjXfi5mJ+W/NHBMfq49yc2l4ZnTPJ8Rvino2Vm5xWsgfUpcTSrIxV+PD6QDYVb6Uw+svDsZbGuiAIAAAAUFDA+AABAsQDGBwAAKBayM35PT/6jvgEAAICPAxgfAACgWADjAwAAFAtgfAAAgGIBjA8AAFAsgPGPEy0zO3k8rBjIEL27zh9ULUxm/nR34ORyNJPgTgxg/KNF5WY/fDFO7NEcTq4Z53qywR9U+8nCLSdx3BFY19X+damy8HsWO4JqfzCXnSunFf6g2nG58HkC8iHV3SHtW3i2H47ug/QxYPyjhdf4+BksvI/mwK4B4xcEvbvOH1S6rnHX8Zsmqz3bFZzPcQTjH0/S3B0FeczZpwIY/2jhMb5q9snbaOTFCu+D6fFv2jOd77InJ4dDNH5qOkm1PygH458g0t4dUrP3dTTy9pkT6vlg/KOF2/gj628i4TcbVv5H79VMKvxB9eJ08YSewfhApmRwd0hHA0exbvjx5+MYXzGOF5EpK+9ZxcvTmOceqVWMdbIEirG22BJXQ9Or6mb2vS9QjMVXpTG7t9raW7LWoaC5u/v+ErXg0ebtPsaCR1SCvtiKSKPLt7Td9IcJG0wBn93dRkvzncXZLWWtNqvQad23Y6to4WQs42e06uFlOc9vWuzA75cKB0iFN6j2B1UeT1kTc+Vdea907vFZf1DtD571rJT3aNh7kfeWObxKf1DtDzZ4H1dZe08ntmmki0H14rRAlthJ7dy0SJZiD9s1jkl6ArEjqPaTYqFGMkWlObvoltQwT5VQI5lYqfXiIHvwrDeLUPvpYa/a/1jWlLylS7YSVC9MnI5/EX/sxT6Zl+V+2lY/V0rltMIfrL/Zj5quyRe3G/xBtf9xlbU3oywmKBV0TssXtvGZVHnXqycuZ/fLVU4rcJkkH5S5Hqv8QbV/WzExeJqehnaqVV6vfLj3NGsnjLO9XTNlFbBryLUlw2RNLEHdAlmmOZPY2Emq/UGFlfZDYheHGuki/rdWfG2llrroTrGcdX8wjpL0uxKd1k1XefCp3q51OSVKziWlee8OGimXJMSN7GJYHOLjGd/laWEth+v2JNYZU84b2atTMtchw2sQ862xmRHNIyPsx98zl69ruZKU4IFpKP6LNJji67XSXtbpxsQe6o2Dm8kP2WcZfzSwH44+v5fj0jdiR1C94pY5thmS8rrjq/Ei2WX5CttiCittVRfJYGVSAlolVyNdDKpX1hXMNA2LtLEuXIdQr5Di2LkSO4Jq/+NaDzMBY23eLpknaQ+Z1/F17nruivlluT/YMDWY+CJ5G79u0VvHTFB1oTyzXCZ2wjqEMqs1bZTTCn/wzMQMaz+0lS91jG+KD8FommjKkhIw9I3OiFm/KH9Q7d+Wd8akn6HxXU4Z60ALk7SyR1e2kDIbnaQy+SfRwCozMiXVsuOxRZ5fPji+y4UVho9nfDJEkLvd5kGxECGkrBvfJchQO1XC4rWbd1qaPxcghFCZuHm+2xUi5tzxO0tq3iHIp63aagFCCIkEVb31tlV1VsavmLxrDzzoNsnw7SxQa5qct7QJ4+NFTe92GWsEIoSQUGK8Yt702ddssXq+wUStkeJs7ZYjhAQGm4Wxzq1ETfrsAd/ItE6KM14uayKTjG/yvomE33i/yCbvNGIjT7bPWPtPCxFCtRLHttofrKRKkHKxY1vt364aaEdChJAINVgrPUHGQomdpnofPDMcK6lk7eJrK+WJAiguyseVPTqEEJL3yhaDtDp1uWQuqPYHa6esQokIIYTk/VLXttofrL3WnpTJ3tMIIUmXbBHfvdQxhNceq/3BOsc1oawUIYSEZ0quZRPVqZlUxGUhn6iOWxi//yWrTRNrtXDuKm1Uxx9sWPFIGsoRKj19wVOfbZxHOSl3TIsbsDpFqOFa1Uowuz75eDY8pKShHCGEmmYU/qA6VgYLrOtqf1BxrV/AuBy0NhAuuiYGES5yJY2iAbd8mHaWLnga6PsXni2xrijphXSGxqf/bITt+KKX1VApcD4bPKQEnw3hGWHnTPlAbJ+Sy3JvUL3iobaicmEPWesPNsxZMz9VDKyb++HonneAYxNVx3/mPNkrL2bARzQ+s85+fjWx4rBi/iIZMvYzFq2mllquov4V928RZMhkGyvNuS9TMnrbHvBZ3d1SzoZi8xVLwDdyvYb+XsXkEq0dgI1/tzUxAoC58nX95eGAz04a6WLhiOPP7EQj4WfOXJfPETuYlS/EctZluT9pWcQeD61IoCrIStd0CbvFjcG3LrNu1Uk2xE0quVbFrrshJLFW0WrH2Pj0hgW+22OZ7K/wsqr82cbxaV+zx6P2B9Vz1xBCqGG6lkPf+Rmf1nbJLJ6QBirklfkHlNMKf7Bhkd5RSf9GGuli0uVomK6ll3zyiWqsWu4gCS7CvWU1yW/Grkimxmf8bJjXtEu2ElR7PRJWeDBOJ9ng367Q03+TIkm254qO6u7zw1tp5KTwEY2/ylsjP79KsCM2VJugLVEF16smqaDQpUlPY3tn9r8CkUpz/wGOtNju/6nV0iih/7iGbnEseRjw2QPf9RlxCoOJUaNHbOMbbLaAzzJZRz8mn/GDM1lnnyKNL7hiCPhVnQgCnCm5+biBirR6ZMP9zJAuvnWZh1BOJ+rU9L8TnC1dSHxK7GCHaBjGx2UGs6acpfHjUWNUcnNbMbdShw/dSXLtJD/jM/KZg/FLBT3Oas+2inE5sjZ+0glnZonrRSv4RcLhFSrK71mptFpFjMKe+/ycHvYmzkyGxk9xZrguOh38C+F6eUtzXJtz9gkY/+QaHyEkEiiHG20bJjfeutWozD7CJ2gxtDqdVirafjtRYc/f+KY/2TM2/s93OGdlZUAhjI8QQkjeJbnmifWhPa5MNBoO3/h4rEVexo/3YHfJVh7LNJfl/u0Kvej0sFft90jYaT+i8UVC63oDx+U4YuMjhBCS6MRWdzXVLxqs+TLeAktlfKppmL/x5RPVR2x8qetHMP6xNL7KfYkMdXVWZry/MvF5j4kMETfsObeuhRLTDWvAZ78fC8IYbLaAb/Bqki0SpDN+8xVLwDfqpHWRVhlMm9xx/PcbuQYn0xhfcq3KH6y7lnl/lAg1TVZ7g+qVmVjxyWF8fPNTsXJ867LCCDIc6sGDZNIZH0sqlhghFOt7zML4Quu62k+KldMKr7sEicSOYP3NfoF1nfZF4qQ3Prs4xBTA+P0V3qDavy7TJfafW1SH3/hdspVYUCtD5IMVnqDavxLr2sGlNSuqcwaHeijbso0vEg5767MyPhqs9AfVnuSrE+PCCs/4q1z5wrfHF8cvHo6l8dFgmztEuDZazneKeML01Zat1p7eUike0CkSVI0Z3CHC4WCFJVVjG69xF3zyXFblzO3uqxppFXUEgdpo2vTZH45QCUVtfZs++6azy6Qq4Qx2pjU+0vVt+uyBux0GSaLjl2+sTs6DBNL54mzZQlDtf1w50CWQcN9cgmFSbh0UymLd4jLcrRrfJza+R0IloDrQaH2/+BCMrkLZAqMZkc74WDHb8p6ztL7l7IyPLqyo/d7yCW8Dls6FFbXXXeFgFSS0b8Qno6aZOn9QvegskSdd9gIY/7LcH1R7PRK8c1m72IpPZgGNLyq5ua32b5+5Nkh1gyejd1ZPXBMpY804SaPEsU3vU8UlesPiTElNrOf2mlflDzbETyY+FYvOErkIoVqqXzc741Md/krXNHUUVM7oua2ZrMGdDZpG3n1kQ6qxOtKr3tfRSPj983s8k94/GY6n8ZHo/OpQclTHMS9l7IH96mV29qLEoKvIa1/SdFaVmyNoMzyaqNeUDN0aTY7qJBSf1vio4vpdxmc3nd3uu7mNx+clfQ2xgTOwk/gIZ/OZNl5QkzzUj91XzHUI1cJkvLhOZ3yE9KxxeI/Lb65kZ3ydu94fZLU8GhJDM/kDXOzAQn8Fa6Qpc3RmfsY/W+piZyDrJyalMT7PYFn6yewkk89DA0cbix1OKUt0w7azRtM2eB7XZmd8vnHDtHYDZwQsxxlwkcfj9628xKLIo0ftZHBMjY+QSNzsMMRmYCUbH1X0q8e3LlER/N1LXFO0UOo6PmtulI09wQohhCTdl03LDyZyNT5CMuW000Z1Do+r1XhIKPec2/dbo7lULzKKCSit5a51plJpH2FOfVKyp2ixjL9dt0CW6Wq5DvE4NquIPeUnvfGRSHiBmkF2dpEs05zh6XTlBweXEkFe3G6gGSRT4yNUczn+XQptfIRoE9nOrngrBtpLcDwq8z2kNT6iJsTVeenflH4ya0uGyZoVKoJ/diWDKVqOSfZQrprLFdQ0NDyBq0u2kqXx2flkT9zj7uXOyfhS6+Zeqjm3qpmd92D8JOApC4eE1vXj22jkte9YNim5em4B4CQxsPwiGnkbnOEZHyFVGUfX30TC0chP93OcCXlSAOMfE7TOZ/vh6B7fszM/JmB84EST+tmZA97XUSr2G361/MXxu/8KCxj/2NAys/M+En7/44LxmP3owPjAyUWqd6Z8Djk2/ts3z7+/O9J2zO68wwCMf5xomdl5dfye4g3GB04wWkdwD5ZDiQPGBwAAKBbA+AAAAMUCGB8AAKBYAOMDAAAUC9kZHwAAADi5gPEBAACKBTA+AABAsQDGBwAAKBbA+AAAAMXCIRlf6wi+hHluAAAAx4pcjG/y7YWjkXB0/0XQ2cf5JApp38Kz/XB0H6QPAABwfMjH+JFwigeQpn5eHQAAAHDk5BzVkarMSz+9j4SjTxx8Kcze19HI22dOqOcDAAAcB/KK41s391MYHyHpaGA/1bozAAAAwBGSl/FNvr2Uxk+ztqRq9snbaORtcAYaAQAAAEdA/sb/0ZlqGYFU68fHlh1/+SC3Nb0BAACAbMjL+G33n4ejkRebo53sFcETWDf3w9E97wDHJqqO/8zZybERAAAAKDD5jceXmu89i43beeM1cSVR3X0ejkZ2ZvM6DgAAAJA/eRq/byGYxvho9gkYHwAA4DiQl/FVrh/D0cgL34iKP5Qvdf0IxgcAADgOHHbPLfrCt8cXxwcAAACOkkMenZlyrI70qvd1NBJ+//yeOWWhAQAAABSCjzkev2/lJdUHEJzJJxsAAABAJhyq8aXWzb1Uc25VMzvvwfgAAABHRF7GHw2kfMrCwPKLFI9aQ1KVcXT9TSQcjfx0X59PNgAAAIBMyNn48s6xjRdR3hh9mmdnDnhfx56+GX61/AWE8QEAAA6ffJ+W/HrTyqFrqd4Z3A9HX3r5umQHvK+jkbdvnn9/d6QNdA8AAHAk5GP8vZ82p3h8rXUE92A5FAAAgGMFrHMLAABQLIDxAQAAigUwPgAAQLEAxgcAACgWwPgAAADFAhgfAACgWADjAwAAFAtgfAAAgGIBjA8AAFAsgPEBAACKBTA+AABAsQDGBwAAKBbA+AAAAMUCGB8AAKBYAOMDAAAUC2B8AACAYgGMDwAAUCyA8QEAAIoFMD4AAECxAMYHAAAoFsD4AAAAxQIYHwAAoFgA4wMAABQLYHwAAIBiAYwPAABQLIDxAQAAigUwPgAAQLEAxgcAACgWwPgAAADFAhgfAACgWADjAwAAFAtgfAAAgGIBjA8AAFAsgPEBAACKBTA+AABAsQDGBwAAKBaOifFlP+g6DupkmX9gQK450HXEXppHosPLGwAAwCcCGP+ToKTqeWPrD2UfOxsfH3W1devStEP6sfMBAMeTk2r8OANyDRgflakOdB1gfIRaGh0hwjEPxgcATsD4nwRgfAowPgCkIlvjlzz6rOOgTqYtq/9F23FwrmlFhMwVje+0HQfNqllBIt2AVPn887YDXceBTv+usSkgFbFuQr2k6i9q3YG240DXcXCu7YBhfNkPuo6Dz84MsI6r/kgU6QAACBdJREFUU80mZSiF8eWi8h/UrVQe1A0rEkH2Iihx1Ta/w5nUNP+lslSf2FQW0LADSlppwztdxztluZaRN4FVrv7lnP5A13HwufqRRMA+hKKJ2qpt/aVB6RLSt8p+0HX8Ii9BSHxHqTnQdhzo9L/UV43Qth5wvhhnD59t6lTgPByxE6XmHYJcVSCRWOvunQsRZIhw77RqlbQkInGzwzC9ayZDBBkyu7YM/f30q6oYDxHkTqOCtc+Q4Xzib84XTkAhbKmzbQ3hQ7i3DP39YkY2LQYydNHcgoSdqvEdnJNLNxzljCuCEFI5gvvh6P7OrLYgJwcAjoycjK9ueq6lzPJLvfqXmGV+kZfgRGZGkB2/9H+Vl8Qt0yVTv0uWVEGNLxWd+auWdYjWH8oESTtI/WX1rEy+q5PF73KpqOYXXcfBZzVm/L+g/C/nOg40iZJvQK450On++lkrYydazYoo1SEOtPSvI/tB1/GuTvGDhpmN2jJp/ESlM76qTJV0tjnO5KEiNe8Q5EYrwfLylrqKSiA6vzqUJOuhcUv8TBTC+PpGR6pDYONfsrkNLmYa6yDz28zsRCPhaCT8armz8KcKAA6RnIyv6zj47IwZlf8F20dZrhVW/TWu7JKaX3QdB5rGR6UIoUIInTZLVb9oOw60atdphBBCpyv+ou040DZvlIpUCCGEVAL5Xwps/JJHn3UcaDXxQ3SVnnmu6Tj4vGYkaQ98DMg1Bzr9X8+U9Z1GCCG5sOyRqvVA17JRkkiDy7ZfqkqkSOBStrG2xrqX9b/UlZtPI4QEY2c0B7qOd2eomuVIVcuBruOd6syYECGEpKdLXHXnDnQdB/UVKvqpoJ1PKS5XtMxTkTKqM1vXcaBrXBKexiVuU4lsQ6XIwvgyzdBVq5Xr1aNM/2lM3Mgm25hULEKorJzYIciQcbAFIYTEY11kiCCftrfrBQghVCZunu92hQjyaUvsRKQ2foxUUR2c3kgMlopFCCFBxWDj5C79ENj4BBkiXBuNzWoBQqhizOAOEeRqNWNPVB3/qasr0+8PAMeD3IyPvSb7QddxoG1aEiJ6IN56RnegawuUMj6G1YaVpK9oOtDp/yI7TdvOiuPnbXzRmV90HX+tZLxrrjp3oNOssFvoKb+puopxT4tqftF1/FVO361oqUF/oNNsVDW8Y7ZjYnnD5QHtm2o7Dj4704cQQuKN5o6Dc/VTjOOKNz6nf1PZDzpGuwFRBs/C+GO1bQe61udyekgqGwpnfKOZlgXF/EUcQkFI0LlBkcfjv5r+EUHnIyKWABXA+C2NjhAx7WCEcZTzpnipgxBlfNeqgvZ5xXiIIFcVCAA+BXIyPuViupcTyubwEUKotP5dLOxjPaNLcnShjV+m4o51JBVF/PAGTN7VMs2KK91JofNY3lgiTjqBSf3VY7VttG+UWZ926p5bQVmgEfcTtP21XrFUWiJPs7vCIzXvsHydfmvFVC8ZIsYt+L+8jR+rvyfHjhJBG4uBdkQA+PQ4UuPj2vFsnf5TMn6iw+BzhZUjbzkaP9YWKYTxEUIIdUnkG/WxXmhmN/sRkLvxbcP4PzA+AORP4Y0/VtuWLFbrmZb4mwNyDSuBFnct8htfKqp6fi4b45co3uk6njMCR9ki3mimx9P5KHn0mf5Ao5otq3/H7NdFnMbHHR7UbssC53iIoUfqx6h/szD+84pMLH56RN70jtaXkJ6CRXV4jS/u30qO6og6Nwgy1Bt7M8n4evX0Lrfx3Z4qlExviytE3LCnPEdgfOATp/DGl5bWv9N1HGjUd0pOUz23FQ3vtB0HmpjFcILPakZOI4REY/LGd+yxOrhGr9mQCKQI6SVnnmt4R5jw9NyWBc51HGgaN8rETam/kGp0/U0kHI28WDGzKoZTOPxdJTPzFhynZ+taY0OA6H/T89bxlwoB1UEtKv+hUU/vw5iqbTvQdbyrl+NDSE+X3FHqaENxUKbGL1G803UcfKYc4+ilKFlRNjwqE2tj36JJUvNLJvuMc/jGR1UOIxkiyJ2W5s9jPbduIxkiyC1VFX0PoYuWfjFCqKK/cXKXY/Alqqy/ESLI3a4efZLZRdXWXYLc7SaGy6V8raEMjS+1+vbC0cjbn5e+gJH/wImi8MZHSDBb18oOhmh1NBWWrDCHJL5TKX/4jOEg3NNL+/i5Xxj9mbEhQ/yDDrUcQxI5Qu1o9kkYj7R74zWxNglkrDGRB7oOeumCDxEffU8F9GmDLwc4Rqky2wGch2CEXDIzPjU5gPObcp6r1oyjW4UhjfGRiHN4pXGQ1tOrcpuYW01zT5OMTzUXuEdnSi2sYZcEyWo3ZGj8vgevIvhns3PEo1wBID8Ow/gIIcFYZcNfNVRv4S8NSherDi4o22hoOdB1HGhbnivK+2ITu2gpRK5aasLRO3W9S4T7e7MwPmJN8uIzPn8dHyEkFZSuKJvfnaOXTzHj4/D9uQYXrTKJZ2AdfHYGj9BnGl9/0Myaw0U7BDUTreW5opyZwwyNj6TC8kBDS+LL0r6pXFQeaDhHHQJP8jryKcrpjI8QKittJ3vnqJr70PSqupnVghCVtnsuuqnJU23tLQKV+1KS8RGqruxfNbp5ZmBV9KvHty658zQ+Us0+eQvGB04gx+QpC58mXD23wMlHquob23gdjYSjz+/lOOIVAD4OYPxDBIz/6WHy7VFhQJ52IQAcZ8D4hwgY/9PD5NsLR/df/7y18KUedA+cOMD4hwgYHwCAYwUYHwAAoFgA4wMAABQLYHwAAIBiAYwPAABQLPz/IARGaBJRsKAAAAAASUVORK5CYII=" alt="">

然后在 app.js 中引入模块

dpnIMtOri92oCCgCwtcxSpexx23pCFgq/joVSfN44zAy/k1ZSc7cgE14m946QaX1PnCMp7JWtZZbqTPPez+50xjIrCWRXXfyOacaS/EqBTMY85gE9cbtIQPkUd+j9dGXkefLSbpxdQCWnqXgxawQP7Z1UXInkjB+eNldAEf9ervL/C3+R65ovcfF7c/nSF7+fFV/6Q8XvJ+BOb3jvJJ8r5P/YblgQGAnoV8tVFlAA8OnMST53+r9Eo9d8Xebi92by5S9+PxNVvsZ0N/MJGu+FfO7jywZ+YRYJ6FfL1RbQ4iOR+/gmdBkfykV8QeCDCfjpWFVlhLlxJ3/++nxuoKFL3JCAfrVcdQEFUEMbOl9A/DvpjR+eoC/SIxAIxBcFElAEAoGoEySgCAQCUSdIQBEIBKJOkIAiEAhEnSABRSAQiDpBAopAIBB1ggQUgUAg6uT/BbnyTxRjejkAAAAASUVORK5CYII=" alt="">

并配置路由结点

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" alt="">

然后在浏览器中打开 http://localhost:3456/users 就能查看到响应内容

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" alt="">

如果希望路由对外输出一个 html 页面,只需要使用 res.sendfile(url)

假如已经在 views 文件夹下准备了一个模板 test.html,然后在 users.js 中追加一个句柄

(

然后打开 http://localhost:3456/users/test 就能查看到 test.html

页面

三、托管静态文件

如果刚才的 test.html 文件中,关联了 views 文件夹下的外部 css 或者 js 文件,就会发现这些文件都没有被加载

只要将 css 文件放到 public 文件夹下,并将文件路径改为绝对路径

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" alt="">

这样外部文件就能正常加载了

甚至可以通过 http://localhost:3456/css/test.css 查看到对应的 css 文件

这是因为在 app.js 中,已经通过 express.static 中间件将 public 文件夹设置为静态资源的根目录

PHPFul3Lo1nPOcJmidWPvr4dSL2fK6TeW0O5QUkqqv6kce93ghRHD23cHVN5tUesOHE74wj/UoQtcPh6pNo3TZPfrWj+Z8DxPwu6Ri4pabYIMr6G9/2/0Kc/XFw9lvjeXI+qFt/Il3+0z8ZDmebPeR3e9skzee/nP3xesjvDv04MHVeTn9MgepTACTD1BoxzW1xszVutsRbLFTpVSyZiVlea9xsjatZnO7jamu8sfYSAP1VuhctlrjZGj+LzpWlTyO1r8zWF8oyS3nt72fb4mZr3Gj6XVlB7UmUjSuzz7CpbwrJETk1fSdS+6LFEjeaQrJTxgrNK6M1bmyeI+WWEqlcQltTKaC6uXLJDmUZl0B24GggrOxAJF3e074wGgjrfA+ruvS8F15Rkn3XmlFVIFzvMgPDLeXME20gjAYe1bgusD4Fp/QSg/L0weEuRk6ZM7cIn7l/X26o5bgFr/QC+e3/vo1F12c5nNLiDewP1mPRxNqD7Til+aRX7lxktB0rbc3p90g12YNHej2LDqpNd58pVwNhcpBexWcb9Gb6gyCl6h0L9h6gteOJriNmsgmw/OdZLPr28TX2x7DoPfQ21DEykK1Q8gGbN4J5F9SpnLe0eCIYvqjXIKScfNqdamEzx6JelUliwIZHege9tmnqXVzZPx05N++gF0f2FgAAiZFpMJ+9Qw4GwvDldm7Sqz7MOHtgvfEEcbJQ0mtWH07wyT8AAFwLvYkmVv9jYfkrcygvE/OVwKbvp3shuUpvr+dxL9Wgs6M658IQll5iAphm88CenQ/OTXp/vueiJuIa1VOs+KuPeJDphtY4WVzN1nykt1kbVFPTaWm4nbpD7SuzdVPfskm5heV3xalMCpeUBsYztIYqSOnrm1YN6VNadNWYfZ5UFxypfWGkp7AkK/x0LA8dOBoIq75/qAuQp2OfVGdijHOTXvXMXD0lhbDqawPzbiKkFyn92qel3iL/qWueyl4Ag0u+l4lYNBGLhm/n/ki80ntx3ua8WiknXvBqedeCA49gg1dTpwmPGR7BJubVmmoAEGmztxuPYNPe6hwNhBGW3j7DB0nXe0uqk0Srp5MdvWc7vECqen2GD5KuAxttX/RIAACgRvpF8KuDSdf7IUorM7aYiEWXp1g7LUQXpBvrq5AiAABJVZ/+1gqGPzWR3A+ELjpGBhCAEPadHXW0FDA8Yh8clksRADQ12CKGR3qxTF8x3VhPB/XNqAQAUDVs80YwfD6VinTA5o1g0wsNmjoJAABUy9vn7XgEuzmceRlVIxEMD6I1RO7KEM1V0y2cPFITNBBEMLcBEHI4q/620f73IdlJ4qLzdZ9suEqSvZ/1UIxyczhz3UhyZLm/JOk6uG5IFbpOdvRe5ydU6bX7NmLRDd9ltoRzKC8TOjKvP9eBEG4JqaXh5gqGR9pp/lZBhzNOlGk1ADJpx4JDlAva8S1NeiUD4+6Q3/3zv1FTOQAAVCjrb01dC/ndPw8yIpDVrT9xS2/I7/5lqvW8EgAgsQ0OMEWar/qIR6tA42ZrHD09XHpKDgAAp4xVKIfDWbHEI71ma9zcuqqUdQIAgGRa0xY3W1KJILWvCC3Ua6cRAADoVOg2zda4pjLzR12q1v2uVDhTWnzKWYVuku6VSt+gHZeULeitcbM13njaCWShltRoOxWAbTQEKxCi5eisqF01WONnT/cXJp9yIq15munRMmUFABWSS/c1gTA6MZQyyE160UBYdx8v11UCgJwyj6kCYXRujOmyEXY4p0bhjN9Td3lU3dUOSgEAFUDXp7g+lKf0au+uRhOxRe7Ad3EGxKj3D9+/CjTqZTBgIzcNKopPFQAAAKIaiWD4or4mNwNhhKXX2vhh0nVgq/PzPvZCOR50lCR7PztP/k3x6ZarhBKCe8n3MhF76XeypWDSeyLYqIfy+mgm7fThO1LjWsHwFZsT76GNidNNeY+T3GUasOERzOOpIP93el5FyizVCGlUem4ew1fajORUEfUISZsBIB7gvPMi15suaCCIUG4DALY718uqsqKkV6f7KOkq2TIf4431Fe5s8ZYXA1aVFZReSokTt5jMV8Do0lve9IPfHbpjbCAblaM46yIifum922qiWoa+JU978VUf8Uju6axxIzp9ivQb51wvv/RSh5jkRAjpNWjHs+cVS+aMarJCude42ho3W1YVkvQaJ2JAXLbQmE6E8GlXU/TJWdMSNxvmSpmJ7xQdOBoIN1CUlYhUSgtkjtL7/SjpoRHC6ys7Tb9b3tKLDD1CA0+UXSwe5rz4V/B1IvbSzx1QKd5gmwjM9aoHgj1eqseMJr3UTnp6kiw3A2Fymes9NvsVMXH4zpb94+CZY1ZmCmxHwvZF1irVdrBmK6fzkOwNBgCk/cwRbHq+jvqyEU05tQk26T3kdpbarWHA5vwnjsfaTHMp72ubSE893vSizSa6PgoaCMOf2wAAQek9caPp8Ab2F0pxFFR6h9reY0w6MBlbTMSi4THWczmUF5Cohltv0SdTti29lBIvsPSyq2n5tTvukN/uoF3MK72U37mld4cCxaXBZoYE5im93Ot9CemlXMiU3rJpVdMrg4XiMaZIL5E+Ib2kfxOJyLRMn3ncbI2b20KcHbrCQzicXRTnMEUgc5Re6iyyxPWQdcI1X+mtLJ8obHyW4Csq3mCb8EgvywTnn1J6AQBApzgS7Pxwa+BA0lWSHDhEcoFuQ3pf/+Jie4acpVc+kJ6pDTZQm88iSS8AAMikerfpZioijDaMzs1AGO7cBgDwS+/Jqa6DLMVRUOm9YXs3V+l99h1rzKJweWkmu9mKY89Ibw+9BREvvRzVRzyKJeOfQXrLFhotLMIJpReAwkvvmYqZwkqvU0g4xRtsE27pbb7vwCOYx1tTlXnB2RzOlLYDRUcjGB5skOZmIAxdehWKz9b7WaQ3w3n1x1uukuSXn6eXeR0LYeT/csHTEF8wTUewm26hAWKdamQFwxf1xtsXGA0oS1Ne4+nGyckKSK+kI0ibXRaiurLvsYMyPbldA2EYuQ0ASCkipWeTQfr3dVdJsv9/7ilOphs5bodz/8c3+G/PIb09hr8mXQfWdSd5L7b7NmLRt0FWuRAsrxrXCjH9L8143bgdzhcuoiz32HnpVRpmmQ5nBeGFNjTQLhYlvbz9GNGULTRa4y0Nw9lfJOPq1mJLb0XDptkab1QNl1INcpfeMtWm2bqqIPvNdwEW6b1Y5SPN1DKV1eKtF5DeM7KZMBqYKy+n3y1vh7P0dhgNPFI0bSfinwf59G/8U7niDbYLt/Sem8fwiGNkWFoKiJAcPbHohSa9N92IFAEAAKlFPfgUIwf+CBqk0Q4HXyZYg7OJMe4HoboTCgCsdZ+u99OjVafaDi3pjvakS0gn+/xZPyVsx2N7N+k6uN52BOMrxVSI5v+yNHtIHTFFimUizliQ9y1ieKTbaaH9O3WWCLzq0kgAAACRaIbbJ2jhrALSm2r6J+Yb9Gc5OgHpwB8it4EM0Xt7yGFxwgYpuItDOLcBAEDy+bqrJNn/0WxWX9MQwcmOT77JRD+1H0qwjHpP3vuyJOl6d73xOF+fiWt4XfXJlqsk6Xp/+cyx5lRsHTPMighZXHvAsrZIuLxUIxEMX7F1oBIAQGld5blJm4dt1Kv19uIRzIOT+q9pcpZe+w+rrxOxqPAu04wwq/Ibd9whv/unwXo0HWY1eud6yO+evcJoI8VJL0/1KQDD9W1xs+VFjVQLgLJUtqBtZUQ4Z9gx6ZVp42brpqaKeF+ayhQLmpbtjXqJkCuDPiiTNvH+vXLn7HOOCiieDhwNhOuHLgCiC6G8KJ9+ggbC9UPtaYsrykAY9c1VaCoAqJB04fW06GJCeieGTpUjAABQri8beqgLhHUTLN3Y/MOsvrqvC4TRuTm5mQimR0SFWe1shDPonFp+E03EXoZu576unVt6q9znWT2cNOmlHWQHpqBBGk84Fk3EomzD+W/a3qc6J9/fclKlt4vpTM4uVgEAAISId+VfgMS7MDHrSeZYakK4H7ONJjHpu9JuTLXUrO5iaiiWkPSmA6c5i4N1uQt5MZiwgXBxCOc2AACcmLXTVnNlyuvoEr0sDrDuw3y+8UOuxUVcC5CWSatqMMNf+RY4EYUisK6Xr7ykXUFW/z/Dt9zXRntzqIuLcpBeu28jVRxCPW6G9AJES1k7lDruZGOm2JYnUTeCzk16d3hdL31NTuuqSvuKLL0cvtxXysy6XdHSK1Gu0tcFWeLGbUkvMMq0m8znZERyfTm3Fk0tVmGPRRADdVUPcegoMVPEPCvpmHtU72OJcKba4NJs3l1RMg2oS4OoO01mDrLLulbqecKTwnbY8XW9Y4tEeSXWHnTn+lB8YVakrTBWekfvN2gvtni4pde70j3iqakiteOCBml4hlkAnJixEc3oO4nej2dkRBBNthlVSI8udB1KEPOOrr8keg8v1NE3T6DasEtvejuee+yZW3URze6fQJVe6dX26QiGL7aQltimttRI9zNoTblzmrYpB8hBegEAsop2/MJEakMMhvTSAn9Wehh7bggapHKCuzhyyW0AAEAIMxbZU8iOLPemArUSjo9C6uMzXazTuieHmg5v9L+Tn/QCAPrOkDbucH64xNhSI7Wb1dvH1xgvXQ7lld1tA/OudA+6K5sne1indWsGWm89zRbZtqV3m6Peq9eo64Yq1OjYlCu9pUa/90o9Oc6iYNIrUH1EY6xQrZ4l9sFoCskROVJbbOkFwJjdbaNtE234rqxioXF70gsAsJTX/I6a40Y+6QVy18ON4kiv1vew7rpLQouwVlyQTzzSBsJo4En9xGiZsrZ8giR75ebyofun556cIWTb9+S05xZCqVwFkV4AQH3ZVfz03BNiCbJmBpexbakhjPGuwF5U4g3sqd7SHz7ugHgaIjaSFNwJb49tlSe/7P8jmnjzdLrwe+Gxhe1Adh/j9G+vE7GXjM+S7M3ycnzLFrpcLHaw+uwz5FqT88F6LMrhkhEJW5jV/2u0xNe0Zjnjo8QbKJsuE/3j7ewqA6WXhNzp24hF3/42VehPr+zNpnw/YJxafhNN/EH7LMneKC/N2FSnXVtWAQAAkgZz50/MoKqismPVZx+R2RcpEYvuzGeP95n07viXizLTc9HEm8XxbfQ7ofRSkDt9zxOx6HrQVdDmY2805fsT4hOzb3+b6c5Wrb1RXumP7GaPwTGz8GU7CL36ZLaI4joaNc/4Dfbbl3cJ6X279nTuWtvOzJvvJ+lV/sO/xquI4g0I6X3zfNnnubS9j1RD6aUjd/qer88Wtr+5N5ryfYtpbHGdMpO6R8pLZTZ6714P+d0h//Vf7thvGMqEr9lpKNUHSu+fj/0kvfLL/jXer9yLN8gf+NFACAQCgUCKCpReCAQCgUCKCpReCAQCgUCKCpReCAQCgUCKCpReCAQCgUCKCpReCAQCgUCKCpReCAQCgUCKCpReCAQCgUCKCpReCAQCgUCKCpReCAQCgUCKCpReCAQCgUCKyv8BcHx+Syw1RI8AAAAASUVORK5CYII=" alt="">

静态资源目录可以有多个,只需要多次调用 express.static 就行

(());

访问静态资源文件时,express.static 中间件会根据目录添加的顺序查找文件

 express 允许给这些文件夹指定一个虚拟挂载点

,express.());

这样就能通过带有 “/static” 前缀的地址来访问 public 目录下面的文件

比如之前的 test.css 文件的地址就变成了 http://localhost:3456/static/css/test.css

如果有多个静态资源目录,还可以把它们都指定在同一个挂载点下

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" alt="">

文件的路径不会冲突

如果多个文件都是同一个路径,就只有第一个文件能被正常访问

四、中间件

上面有提到 express.static 是一个中间件

在软件领域中,中间件在应用与应用之间起到连接的作用

比如一瓶可乐的生产流水线是这样的: 水 > 净化 > 调配 > 装瓶 > 质检 > 可乐

其中除了起点 “水” 和终点 “可乐” 都可以看做中间件

在 express 中,中间件就是处理 http 请求的各种函数,这些函数通过 next() 方法连接,形成了一个流水线

中间件一般用 app.use() 注册,针对不同的请求,还可以使用 或者 HTTP 动词作为方法名,如 get、post

中间件可以接收三个参数,依次为 request(HTTP请求)、response(HTTP响应),next 回调函数(下一个中间件)

每个中间件都可以对 request 进行加工,并使用 next() 将 request 对象传给下一个中间件

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" alt="">

如果向 next() 传入参数(字符串 ‘route’ 除外),则代表抛出一个错误,参数为错误文本

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" alt="">

而后的中间件将不再执行,直到发现一个错误处理函数为止

注册中间件的时候,还可以传入一个 url,让中间件的调用具有针对性

SAEEJt494AtTDcyBWkqu2yN0DR5HmIjwBAibHXFtmlB2ftORaCDSQkoiIqDZvs606J4H/YMBN3C2Nt+nhURKHRM8m+qzkt0gQAYDfYa4t8KKR7/EnAM9q8120rMdI+/mTJdWq/30wAwAEELLJbKPQ9P017khP9K8tz13FLSlwDQOyTMZeTS0ZWPLfHBhphyAYApQhYBAAAAJAPWAQAAACQD1gEAAAAkA9YBAAAAJCPfIsAAAAAAFgEAAAAkA9YBAAAAJAPWAQAAACQD1gEAAAAkM8uWKSFCL3auNlS/IoAAACA3SZfi1j9W5FYNBLbfhma7lWLlVD3zj7bjsS2QSQAAAAHj0JZJBqJRd+FbhhEC6ltvtfRyPvHRGuetQEAAAClRUFmtNQG293/vI9GYo+JdCVsvjex6Ltn0zAeAQAAOEgULC6Cr29nsAhC6tHgdiS2RZ8vVIUAAADA3lMwi1j9WxktglDX0stY9F1wQjR6AgAAAOxHCmuRp9OZFNG58CIaef9wtFBVAgAAAHtNwSzSsfg8Eou+XB+1pP8xIXx9OxLb8g0Uqk4AAABgjyncehG1beFZPF/rrc8qVsRw53kkFt24WbA6AQAAgL2lgBbpnQ1JWATdfAwWAQAAOEgUzCKGmaeRWPSl/5whfWhEPfMULAIAAHCQ2M3oOjrr34K4CAAAwEFiFzN9IUcLAADgwAHrRQAAAAD57JpF1Pj6FqxdBwAAOGAUzCKjwYxPQBlYepnhcY0AAADA/qQgFtFaLq29jKWPecAzfQEAAA4ohXwy/Jt1XCTmoe6cDm1HYq98NgiIAAAAHDQKZZGt/6xPdIhrooUIbcFPVAEAABxI4HfXAQAAAPmARQAAAAD5gEUAAAAA+YBFAAAAAPmARQAAAAD5gEUAAAAA+YBFAAAAAPmARQAAAAD5gEUAAAAA+YBFAAAAAPmARQAAAAD5/D8PjoVLeLIYKgAAAABJRU5ErkJggg==" alt="">

比如这个例子,只会对路径前缀为 “/home” 的请求调用中间件

稍微改动一下...

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" alt="">

眼熟吗?没错,这货成了一个路由

这时候再来看这段代码,是不是理解得更清晰了呢?

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" alt="">

Express 其实就是由路由和中间件构成的,从本质上来说,一个 Express 应用就是在调用各种中间件

 4.0 版本之后,除了 express.static 之外的中间件都被独立出来作为模块安装使用

更多的中间件将在后续文章中介绍

原文链接:/express/73410.html

猜你在找的Express 相关文章