当前位置: 首页 > news >正文

商丘网站建设价格网络运营推广合作

商丘网站建设价格,网络运营推广合作,济南哪家网站技术比较高,微信小程序怎么做游戏nodejs express 实现 http文件下载服务程序, 主要包括两个功能:指定目录的文件列表,某个文件的下载。 假设已经安装好 nodejs ; cd /js/node_js ; 安装在当前目录的 node_modules/ npm install express --save npm install express-gene…

nodejs + express 实现 http文件下载服务程序,

主要包括两个功能:指定目录的文件列表,某个文件的下载。

假设已经安装好 nodejs ;

cd /js/node_js ; 安装在当前目录的 node_modules/
npm install express --save 
npm install express-generator --save

D:\js> node node_js/node_modules/express-generator -e blog

   create : blog\create : blog\public\create : blog\public\javascripts\create : blog\public\images\create : blog\public\stylesheets\create : blog\public\stylesheets\style.csscreate : blog\routes\create : blog\routes\index.jscreate : blog\routes\users.jscreate : blog\views\create : blog\views\error.ejscreate : blog\views\index.ejscreate : blog\app.jscreate : blog\package.jsoncreate : blog\bin\create : blog\bin\www

cd blog

install dependencies:
     > npm install

npm notice created a lockfile as package-lock.json. You should commit this file.
added 54 packages from 38 contributors and audited 55 packages in 8.769s

编写模板文件 blog/views/files.ejs 如下

<!DOCTYPE html>
<html><head><title>下载文件选择</title></head><body><h1>请选择下载文件:</h1><% if(files.length>0) {%><ul><% files.forEach(function(file){ %><li><a href="/file/<%- file %>" target="_blank"><%- file %></a></li><%})%></ul><%} else {%><p>没有可下载文件…</p><%}%></body>
</html>

编写web服务程序  blog/expres_download.js 如下

//var http = require('http');
var express = require('express');
var fs = require('fs');
var path = require('path');
var logger = require('morgan');
var app = express();// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');app.use(logger('dev'));
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(express.static(path.join(__dirname, 'public')));// 首页
app.get('/', function(req,res){res.end('<a href="/files"> 文件列表 </a>');
});// 指定目录
const dir = "/Books";
// 显示指定目录的文件列表
app.get('/files', function(req, res, next) {// ls 文件目录//var filePath = path.join(__dirname, './');var filePath = path.join(dir, './');fs.readdir(filePath, function(err, results){if(err) throw err;if(results.length>0) {var files = [];results.forEach(function(file){if(fs.statSync(path.join(filePath, file)).isFile()){if (path.extname(file) === '.pdf'){files.push(file); //仅显示.pdf文件}}});res.render('files', {files:files});} else {res.end('当前目录下没有文件');}});
});// 实现文件下载
app.get('/file/:fileName', function(req, res, next) {  var fileName = req.params.fileName;var filePath = path.join(dir, fileName);var stats = fs.statSync(filePath);if(stats.isFile()){res.set({'Content-Type': 'application/octet-stream','Content-Disposition': 'attachment;','Content-Length': stats.size});//'Content-Disposition': 'attachment; filename='+encodeURI(fileName),fs.createReadStream(filePath).pipe(res);} else {res.end('404');}
});app.listen(8080, "127.0.0.1", function() {console.log('web server 正在运行 http://127.0.0.1:8080')
});

运行 node expres_download.js 

http://www.mmbaike.com/news/110810.html

相关文章:

  • 安县建设局网站专业地推团队电话
  • 佛山新网站建设深圳推广平台深圳网络推广
  • 做网站的感觉青岛网络优化费用
  • 黑客做网站网络销售公司
  • 减肥药可以做网站吗网络营销师证书有用吗
  • 建站模板建网站今日头条官网首页
  • 政府网站建设经验材料范文公司营销策划方案案例
  • 做网站广州seo网站优化服务
  • 浙江高端网站建设公司织梦seo排名优化教程
  • 潍坊最早做网站的公司淘宝网络营销方式
  • 什么网站专做宠物物品今日最新消息
  • 怎么利用源码做网站太原seo快速排名怎么样
  • 2023云南疫情最新消息今天杭州网站推广优化
  • 用自己照片做衣服 杯子的是哪个网站网站关键词优化公司哪家好
  • 网站建设的风险管理百度关键词排名十大排名
  • 网站建设的人性分析网站seo诊断技巧
  • 美国做跟单社区的网站自媒体怎么赚钱
  • wordpress模板上传图片网络营销优化推广
  • 网站域名后缀网站seo推广员招聘
  • 网站配色 蓝绿域名信息查询
  • 用微信怎么做商城网站长沙疫情最新情况
  • 全国油价今日价格seo关键词推广价格
  • 教人做甜点的网站太原网站制作优化seo公司
  • 意识形态加强网站建设电商平台的推广及运营思路
  • robots.txt 禁止爬行整个网站百度seo关键词点击软件
  • 山东济南网站新闻百度人工优化
  • 河南企起网站建设怎样淘宝seo排名优化
  • 网站模板源代码下载交换神器
  • 哪家网站建设公司专业运营推广
  • 照明网站模板百度权重划分等级