#node.js
#node.js
Вопрос:
Я администратор сервера Linux, поэтому у меня нет опыта программирования в nodejs. Проблема в том, что я установил nodejs для определенного скрипта laravel для мобильного чата.
Теперь, когда я все настроил, и nodejs запущен, и веб-сокет также открыт, скрипт работает, но когда новые пользователи регистрируются, они делают это успешно, в то время как при попытке входа в систему появляется ошибка (cat error).
Я проверил, что новые зарегистрированные пользователи добавлены в БД и что веб-сокет открыт, но я не знаю, почему, когда пользователи пытаются войти в систему, он выдает ошибку. Как администратор сервера я проверил все файлы журналов, но я не получаю ничего, связанного с проблемой.
Также включен журнал запросов mysql и обнаружено, что SQL-запрос уже отправлен в mysql при попытке входа в систему с новой созданной учетной записью, но я не знаю, почему пользователи не могут войти в систему, поэтому я подозреваю, что внутренний сервер не работает.
Вот строки кодов в «server.js » это связано с проблемой
this.handleDisconnection(), this.store.revealNames.register(this.user).catch(e => {}), this.handler(o.enc({
publicMessageId: s,
error: !1,
grantedSettings: this.user.grantedSettings(),
posts: this.store.wall.all(),
rooms: this.store.rooms.all().map(e => e.parse(this.user, this.store.users)),
users: this.store.users.filter(e => e.canBeSeenBy(this.user)).map(e => e.parse()),
gifts: this.store.gifts.all(),
faces: this.store.faces.all(),
user: this.user.parse()
})), this.store.radio.startListening(this.user)
}).catch(e => {
this.user.isLogged = !1;
const t = {
error: !0,
message: "Øدث خطأ أثناء تسجيل الدخول, الرجاء إعادة المØاولة"
};
try {
if (e.response.data.name) return t.message = e.response.data.name, this.handler(o.enc(t));
if (e.response.data.is_friendly_message amp;amp; e.response.data.message) return t.message = e.response.data.message, this.handler(o.enc(t))
} catch (e) {
return this.user.isLogged = !1, this.handler(o.enc(t))
}
t.data.user.adminToken amp;amp; this.store.adminTokens.push(t.data.user.adminToken), this.handleDisconnection(), this.user.isVirtual ? (this.store.virtualUserIds.push(this.user.reg_id), this.handler(t.data.user.defaultRoom)) : (this.store.revealNames.register(this.user).catch(e => {}), this.handler(o.enc({
publicMessageId: r,
error: !1,
cookie: e,
grantedSettings: this.user.grantedSettings(),
posts: this.store.wall.all(),
rooms: this.store.rooms.all().map(e => e.parse(this.user, this.store.users)),
users: this.store.users.filter(e => e.canBeSeenBy(this.user)).map(e => e.parse()),
gifts: this.store.gifts.all(),
faces: this.store.faces.all(),
user: this.user.parse()
})), this.store.radio.startListening(this.user))
}).catch(e => {
this.user.isLogged = !1;
const t = {
error: !0,
message: "Øدث خطأ أثناء تسجيل الدخول, الرجاء إعادة المØاولة"
};
try {
if (e.response.data.name) return t.message = e.response.data.name, this.handler(o.enc(t));
if (e.response.data.password) return t.message = e.response.data.password, this.handler(o.enc(t));
if (e.response.data.is_friendly_message amp;amp; e.response.data.message) return t.message = e.response.data.message, this.handler(o.enc(t))
} catch (e) {
return this.user.isLogged = !1, this.handler(o.enc(t))
}
})
Я получаю следующую ошибку
Øدث خطأ أثناء تسجيل الدخول, الرجاء إعادة المØاولة
В приведенном выше коде есть два блока, я получаю ошибку при попытке входа с зарегистрированным пользователем.
почему новые зарегистрированные пользователи не могут войти в систему?
Комментарии:
1. Вы могли бы получать более качественные сообщения об ошибках, но либо возвращать, либо выполнять
console.error
объект ошибки, который вы получаете в блоках catch. Это помогло бы отладке лучше2. ошибка на арабском языке, поэтому я не показываю, но я получил эту ошибку при попытке входа в систему
3. Это то, что вы возвращаете из блоков catch.
const t = { error: !0, message: "Ø...
Но вы, кажется, проглатываетеe
то, что принимается в блоке catch. Я имел в виду это4. извините, я не разбираюсь в программировании, только основы, и я знаю, что cath поймает ошибку, но не совсем понимаю, как можно решить эту проблему? это из кода или с сервера?