pastebin api createPasteFromFile Ошибка 'createPaste' из неопределенного
Я создаю систему регистрации с узлом для дерганного чата. Когда вы набираете "! Logs user", он должен загрузить правильный файл user.txt в pastebin и выдать ссылку на pastebin в чате.
Я использую pastebin-js и tmi.js
Проблема в том, что я набираю! Logs user выдает ошибку в консоли
C:\gempbot\node_modules\pastebin-js\bin\pastebin.js:137
this.createPaste(data, title, format, privacy, expiration)
^
TypeError: Cannot read property 'createPaste' of undefined
at C:\gempbot\node_modules\pastebin-js\bin\pastebin.js:137:13
at fs.js:334:14
at FSReqWrap.oncomplete (fs.js:95:15)
КОД
client.on('chat', function (channel, user, message, self) {
if (user["username"] === admins[0] || user["username"] === admins[1] || user["user-type"] === "mod" ) {
if ( message.indexOf("!logs") >= 0 ) {
var getNthWord = function(string, n){
var words = string.split(" ");
return words[n-1];
}
pastebin.createPasteFromFile('./logs/' + getNthWord(message, 2) + '.txt', 'logs for ' + getNthWord(message, 2))
.then(function (data) {
// we have succesfully pasted it. Data contains the id
console.log(data);
client.say(channel, 'Logs for ' + getNthWord(message, 2) + 'http://pastebin.com/' + data);
})
.fail(function (err) {
console.log(err);
});
}
}
});
У кого-нибудь есть идея как мне исправить эту ошибку? Я запутался, что на самом деле вызывает проблему. Здесь остальная часть кода для аутентификации в pastebin (который находится в верхней части моего кода)
var PastebinAPI = require('pastebin-js'),
pastebin = new PastebinAPI({
'api_dev_key' : 'censored',
'api_user_name' : 'censored',
'api_user_password' : 'censored'
});
1 ответ
Это ошибка в модуле. this
используется внутри обратного вызова, и обратный вызов не привязан к Pastebin
Например, this
значение неверно. Здесь есть пиар, чтобы это исправить.