当前位置:首页 > 技术分析 > 正文内容

nodejs读取文件优势小体验

ruisui883周前 (04-07)技术分析19

场景需求:

首先,我做的是javaweb项目,其中批量注册功能,注册前会批量发短信给客户。在开发环境,如果总是批量发信息,一是浪费资源;二是造成骚扰。所以发短信要假发。也就是把短信的内容写到文件或数据库中,写到数据库,前端同事需要数据时还要每次都给他找,太麻烦了。所以一个好方法就是把短信内容写到文件中,通过一个服务来读取文件内容,其他人访问服务url就可以了。

原想的是在javaweb项目中加个servlet,servlet读取文件内容,再访问servlet就可以显示文件内容,但是这样就会和javaweb项目耦合在一起,不符合解耦原则。在鹏哥的帮助下,使用了nodejs,参照鹏哥的例子才完成这个功能

第一步:创建msg.js文件,输入内容如下

作用是读取两个文件的内容放在一下显示

var http = require("http");

var fs=require("fs");

var logfile_inviteCode = "E:/nodejs/meipro-msg.log";

var logfile_authCode = "E:/nodejs/meipro-msg2.log";

http.createServer(function(request, response) {

response.writeHead(200, {"Content-Type": "text/plain;charset=utf-8"});

var exists = fs.existsSync(logfile_inviteCode);

var exists2 = fs.existsSync(logfile_authCode);

var data;

if(exists==true){

data="邀请码:\n"+fs.readFileSync(logfile_inviteCode,"utf-8")+"\n\n";

}

if(exists2==true){

data+="验证码:\n"+fs.readFileSync(logfile_authCode,"utf-8");

}

if(!exists&&!exists2){

data="没任何短信操作;";

}

response.write("发送短信后刷新该页面:\n"+data);

response.end();

}).listen(8888);

msg.txt文件内容:

hello

msg2.txt文件内容:

world

运行msg.js需要nodejs环境,下载安装nodejs,之后在msg.js目录下打开终端,输入node msg.js,在浏览器中输入localhost:8888,一切顺利的话会显示出文件的内容:

hello world

如果要在linux下把此服务作为后台任务,输入命令:node msg.js &

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/3331.html

标签: readfilesync
分享给朋友:

“nodejs读取文件优势小体验” 的相关文章

内存问题探微

这篇文章是我在公司 TechDay 上分享的内容的文字实录版,本来不想写这么一篇冗长的文章,因为有不少的同学问是否能写一篇相关的文字版,本来没有的也就有了。说起来这是我第二次在 TechDay 上做的分享,四年前第一届 TechDay 不知天高地厚,上去讲了一个《MySQL 最佳实践》,现在想起来那...

学前端,这30个CSS选择器,你必须熟记

你学会了基本的id,class类选择器和descendant后代选择器,然后就觉得完事了吗?如果这样,你就会错过许多灵活运用CSS的机会。虽然本文提到的许多选择器都属于CSS3,并且只能在现代的浏览器中使用,但学会这些是大有好处的。什么是CSS选择器呢?每一条css样式定义由两部分组成,形式如下:[...

Vue进阶(幺叁捌):vue路由传参的几种基本方式

1、动态路由(页面刷新数据不丢失)methods:{ insurance(id) { //直接调用$router.push 实现携带参数的跳转 this.$router.push({ path: `/particulars/${id}`,...

vue-router是如何解析query参数呢? #前端

vue-router 中的 query 解析。1. 大家好,我是龙仔。今天来分享 vue-router 是如何解析快乐参数的,因为使用 vue 路由会传 query 参数和快乐参数,所以从 vue 的角度来看如何解析传递的快乐参数。2. 基础知识大家应知道,快乐参数结构如:a、b、c、a、b、c、a...

Vue Router 4 路由操作 - 路由导航

路由导航分为 声明式导航 和 编程式导航。通过 <router-link to="..."> 标签跳转的方式为声明式导航。通过 路由实例对象(router.push(...))跳转的为编程式导航。导航到不同的位置想要导航到不同的URL,使用 router.push 方法。...