如何在node.js中访问localStorage?

Chr*_*ams 22 local-storage node.js

我尝试在网上搜索可以访问客户端的localStorage但无法找到任何内容的节点模块.谁知道一个?

小智 28

如果你的意思是html 5 localStorage,那就没有这样的事情,因为node.js是一种服务器端技术.Html 5 localStorage是支持的客户端功能

  • 有很多模块将DOM带到服务器端,webkit到服务器端,所以我很好奇是否有人将localStorage带到了服务器端. (18认同)

Vij*_*ain 27

您可以使用 :

node-localstoragenpm模块localStorage服务器端使用.

var LocalStorage = require('node-localstorage').LocalStorage,
localStorage = new LocalStorage('./scratch');
Run Code Online (Sandbox Code Playgroud)

  • 什么是''./ scratch'`? (13认同)
  • 它在客户端浏览器中不起作用.即使设置了值,浏览器中的localstorage也是空的. (3认同)
  • @kittu,“./scratch”是用作“localStorage”数据存储的文件。它可以是任何文件,例如:`/tmp/node-${process.pid}-localStorage`。参考:https://github.com/lmaccherone/node-localstorage/blob/758079000ce4edc21648102c8588a9eebb0d34cf/LocalStorage.coffee#L53 (2认同)
  • 值得注意的是:如果您的节点应用程序在容器或虚拟化(如 docker 或 aws ecs)中运行,那么您的 localStorage 将随着容器的重新启动而死亡,因为虚拟 ./scratch 目录将丢失。 (2认同)

Lar*_*tle 11

页面加载时,发送一个查询客户端localStorage内容的帖子.


小智 6

找到这个 store

// Store current user 
store.set('user', { name:'Marcus' })

// Get current user 
store.get('user')

// Remove current user 
store.remove('user')

// Clear all keys 
store.clearAll()

// Loop over all stored values 
store.each(function(value, key) {
    console.log(key, '==', value)
})
Run Code Online (Sandbox Code Playgroud)

  • 所以在后端我可以设置 localStorage 而在前端我可以在 console.log(localStorage.getItem("user")) 中看到名称? (3认同)