Obtendo erro ao mover o script para outro servidor.
(nó: 15707) [DEP0005] DeprecationWarning: Buffer () está obsoleto devido a problemas de segurança e usabilidade. Use os métodos Buffer.alloc (), Buffer.allocUnsafe () ou Buffer.from ().
Versões atuais:
Ubuntu 16.04.4 LTS
Node - v10.9.0
NPM - 6.2.0
Versão anterior:
Ubuntu 14.04.3 LTS
NPM - 3.10.10
Node - v6.10.3
exports.basicAuthentication = function (req, res, next) {
console.log("basicAuthentication");
if (!req.headers.authorization) {
return res.status(401).send({
message: "Unauthorised access"
});
}
var auth = req.headers.authorization;
var baseAuth = auth.replace("Basic", "");
baseAuth = baseAuth.trim();
var userPasswordString = new Buffer(baseAuth, 'base64').toString('ascii');
var credentials = userPasswordString.split(':');
var username = credentials[0] !== undefined ? credentials[0] : '';
var password = credentials[1] !== undefined ? credentials[1] : '';
var userQuery = {mobilenumber: username, otp: password};
console.log(userQuery);
User.findOne(userQuery).exec(function (err, userinfo) {
if (err || !userinfo) {
return res.status(401).send({
message: "Unauthorised access"
});
} else {
req.user = userinfo;
next();
}
});
}
Respostas:
Observe que Buffer.alloc () também é mais rápido nas versões atuais do Node.js do que o novo Buffer (size) .fill (0), que é o que você precisaria de outra forma para garantir o preenchimento zero.
fonte
O uso do
new Buffer()
construtor obsoleto (isto é, como usado pelo Yarn) pode causar avisos de suspensão de uso. Portanto, NÃO se deve usar o construtor Buffer obsoleto / inseguro.De acordo com o aviso de suspensão de uso, o aviso
new Buffer()
deve ser substituído por um de:Buffer.alloc()
Buffer.allocUnsafe()
ouBuffer.from()
Outra opção para evitar esse problema seria usar o pacote safe-buffer.
Você também pode tentar (ao usar fio ..):
como mencionado aqui: Link
Outra sugestão dos comentários (thx para gkiely): auto-update
Para atualizar sua versão do Yarn, execute
fonte
Altere esta linha do seu código para este -
ou no meu caso, dei a codificação na ordem inversa
fonte