我是Node.js的新手,我最近遇到了一个非常简单的问题.
我正在使用名为multer的模块,因此用户可以上传图像.在我的网络应用程序中,所有用户都有一个唯一的ID,我希望上传的图像存储在一个基于其ID的目录中.
例:
.public/uploads/3454367856437534
Run Code Online (Sandbox Code Playgroud)
这是我的routes.js文件的一部分:
// load multer to handle image uploads
var multer = require('multer');
var saveDir = multer({
dest: './public/uploads/' + req.user._id, //error, we can not access this id from here
onFileUploadStart: function (file) {
return utils.validateImage(file); //validates the image file type
}
});
module.exports = function(app, passport) {
app.post('/', saveDir, function(req, res) {
id : req.user._id, //here i can access the user id
});
});
}
Run Code Online (Sandbox Code Playgroud)
我怎样才能访问
req.user._id
Run Code Online (Sandbox Code Playgroud)
在...之外
function(req,res)
Run Code Online (Sandbox Code Playgroud)
所以我可以使用它与multer生成基于id的正确目录?
编辑这是我尝试过但没有用的东西:
module.exports = function(app, passport) …Run Code Online (Sandbox Code Playgroud) 因此,我有几个大约1 TB的系统备份映像文件,我想快速计算每个文件的哈希值(最好是SHA-1)。
最初,我尝试计算md5哈希值,已经过去了2个小时,还没有计算出哈希值(对于最大容量为1TB的大型文件,这是显而易见的)。
那么,有没有可以快速哈希1TB文件的程序/实现?
我听说过Tree-Hashing同时散列文件的某些部分,但是到目前为止我还没有找到任何实现。
我正在尝试使用 socket.io 创建一个私人消息系统
为了将用户与其套接字相关联,大多数站点都建议如下:
var people = {};
client.on('connection', function(socket) {
//join the server
socket.on('add user', function(user_id) {
//create user-socket map
people[user_id] = socket.id;
});
});
Run Code Online (Sandbox Code Playgroud)
在我看来,上面代码的问题在于它user_id是从客户端发送的,所以如果用户以某种方式修改它并发送另一个user_id,就会发生模拟。
另外,我无法访问req.user._id,client.on('connection'...所以我应该如何user_id从服务器端获取?我正在使用 node.js、passport 和 express。
假设我有两个文件 ( test_file1.py, test_file2.py) 用于使用py.test.
是test_file1.py这样的:
import datetime
import pytest
Datetime = datetime.datetime.now()
def test_connect():
#1st Query to a mysql database
#2nd Query to a mysql database
..
#N Query to a mysql database
Run Code Online (Sandbox Code Playgroud)
现在我正在编写test_file2.pywhich 是 的扩展test_file1.py,但我不想编写与上面测试中编写的相同的 mysql 查询。
我怎样才能py.test继承上述测试
并在执行后运行两者py.test test_file2.py?
像这样的(test_file2.py内容):
import datetime
import pytest
from testDirectory import test_file1
Datetime = datetime.datetime.now()
def test_connect():
#Here should run all the tests from 'test_file1' …Run Code Online (Sandbox Code Playgroud) javascript ×2
node.js ×2
hash ×1
inheritance ×1
large-data ×1
multer ×1
pytest ×1
python ×1
socket.io ×1
sockets ×1
unit-testing ×1
upload ×1
variables ×1
websocket ×1