2012-04-27 40 views
17

Tôi đã thử tìm kiếm một mô-đun nút có thể truy cập vào localStorage của máy khách nhưng không thể tìm thấy bất kỳ thứ gì. Có ai biết không?Làm thế nào để truy cập localStorage trong node.js?

+4

Bạn đang cố gắng để hoàn thành, chính xác? 'localStorage' là một API HTML 5 và chỉ có sẵn trên các trình duyệt. Node.js sẽ sử dụng hệ thống tệp hoặc cơ sở dữ liệu để duy trì. –

+0

Tôi có một kịch bản mà người dùng truy cập vào trang và đã được cung cấp giá trị mã thông báo trong localStorage từ một trang khác trên cùng một tên miền. Tuy nhiên, một phần của trang web không chạy nút, và bây giờ tôi đang ở trong nút và cần giá trị mã thông báo. Không phải là thiết lập lý tưởng. –

+3

Có vẻ như các tùy chọn chuyển từ localStorage sang cookie hoặc thực hiện yêu cầu ajax. –

Trả lời

20

Nếu bạn ngụ ý html 5 localStorage, không có điều gì như vậy vì node.js là một công nghệ phía máy chủ. Html 5 localStorage là một tính năng phía máy khách được hỗ trợ

+12

Có rất nhiều mô-đun mang DOM đến phía máy chủ, webkit đến phía máy chủ, vì vậy tôi đã tò mò nếu ai đó có đưa localStorage về phía máy chủ. –

11

Khi trang tải, hãy gửi một bài đăng truy vấn nội dung của localStorage của máy khách.

23

Bạn có thể sử dụng: mô-đun

node-localstorage NPM sử dụng localStorage ở phía máy chủ.

var LocalStorage = require('node-localstorage').LocalStorage, 
localStorage = new LocalStorage('./scratch'); 
+6

''./Scratch'' là gì? – kittu

+1

Nó không hoạt động trong trình duyệt của khách hàng. localstorage trong trình duyệt bị trống ngay cả khi giá trị được đặt. –

+0

Không hoạt động ở phía khách hàng –

1

Tìm thấy này 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) 
}) 
Các vấn đề liên quan