美文网首页我爱编程
笔记 脑子不够用

笔记 脑子不够用

作者: 嘣嘣嘣嘣 | 来源:发表于2017-11-13 15:04 被阅读0次

    jade:(改名字了 现在是pug),网址教程{https://pug.bootcss.com/api/getting-started.html

    nightmare: Nightmare 是一个用于node.js的浏览器自动化库,比Phantomjs更简单易用, 用于Web UI测试和抓取。类似的这种库还有{Phantomjs、slimerjs、casperjs}。URL=(https://github.com/segmentio/nightmare

    mongoVue: 可视化的mongodb管理工具。

    nodejs操作mongodb的第三方工具库{mongodb、mongoose、monk、mongolass}

    nodejs工程 注册、登录持久化使用express中间件:express-session

    首先安装express-session:npm i express-session --save;然后在入口文件引入并命名为全局使用

    var session = require('express-session')

    app.use(session({

    secret: 'sessiontest',//与cookieParser中的一致

    resave: true,

    saveUninitialized:true

    })

    express-session的一些常用的方法:

    Session.destroy():删除session,当检测到客户端关闭时调用。

    Session.reload():当session有修改时,刷新session。

    Session.regenerate():将已有session初始化。

    Session.save():保存session。

    同时,想要达到持久化还需要把session存到的值存储到重启项目不会丢失的地方,例如数据库或者本地cookie,因为之前存储到项目内存中,每次重启项目session就会丢失。所以现在假如存储到数据库(mongodb)还需要中间件(connect-mongo),安装之后全局引用,将上面的代码略微修改如下:{

    const session = require('express-session');

    const MongoStore = require('connect-mongo')(session);

    app.use(session({

    secret: 'sessiontest',//与cookieParser中的一致,

    store: store: new MongoStore({ mongooseConnection: mongoose.connection })

    })

    前提是mongodb必须是处于连接状态,所以在入口文件app.js就需要提前连接数据库,在"app.use(session({"之前要把mongodb连接。插入代码如下:

    const mongoose = require('mongoose')

    mongoose.connect('mongodb://loachost/数据库名字',)

    mongoose.Promise=global.Promise

    superagent : 是一个超轻的ajax api,有着可读性强,高度灵活,学习曲线低的优点。最近在写爬虫,看了下node里面有啥关于ajax的模块,发现superagent这个模块灰常的好用。(参考:http://www.jianshu.com/p/98b854322260)

    nodejs写爬虫:首先程序运行读取的第一个文件就是 robots.txt,这是一个协议,不是一个命令,该文件告诉爬虫在服务器上什么文件爱你可以被查看,所以爬虫程序就会根据这个协议内容来确定访问范围。

    async 函数返回的是一个 Promise 对象。async 函数(包含函数语句、函数表达式、Lambda表达式)会返回一个 Promise 对象,如果在函数中 return 一个直接量,async 会把这个直接量通过 Promise.resolve() 封装成 Promise 对象。如下图所示:

    相关文章

      网友评论

        本文标题:笔记 脑子不够用

        本文链接:https://www.haomeiwen.com/subject/vdszmxtx.html