Вопрос закрыт.
Вопросы и Ответы
#332
Отправлено 15 декабря 2016 - 00:20
глупый ламерский вопрос, но все же..
используя панель isp manager, установлен вордпресс, в каталоге он -
после установки было написано что вход в админку: сайт.com/wordpress/wp-admin, но эта ссыль ни фига не работает. сколько не подбирал, до админки не добрался. wtf?
#340
Отправлено 11 апреля 2017 - 20:27
Я в терминологии не силен, поэтому за ошибки в названиях всех этих умных слов не пинайте )
Есть контроллер https://pastebin.com/GE5870FH который вызывает функцию / метод из https://pastebin.com/sdRCh1uC
В данном случае '/api/orders' ... проверяет есть ли пользователь.
В authorize.js если return db.users.findById(decodeToken.id)...
То получаю ошибку
Unhandled rejection SequelizeConnectionError: read ECONNRESET
at D:\NodeJSProjects\ParkingHouse\node_modules\sequelize\lib\dialects\postgres\connection-manager.js:110:20
at Connection.<anonymous> (D:\NodeJSProjects\ParkingHouse\node_modules\pg\lib\client.js:186:5)
at emitOne (events.js:96:13)
at Connection.emit (events.js:188:7)
at Socket.<anonymous> (D:\NodeJSProjects\ParkingHouse\node_modules\pg\lib\connection.js:86:10)
at emitOne (events.js:96:13)
at Socket.emit (events.js:188:7)
at emitErrorNT (net.js:1278:8)
at _combinedTickCallback (internal/process/next_tick.js:74:11)
at process._tickCallback (internal/process/next_tick.js:98:9)
типа нет соединения с БД. Спустя какое то время, промис возвращает результат уже после ошибки.
Если просто делать запрос в базу без промисов все нормально, но без асинхронности.
Можно типа async/await заюзать, но исходя из http://node.green/ версию 7,* далеко не везде юзают. Babel тоже не хочу. В общем что не так с промисами, где я там накосячил?
Сообщение изменено: kuznets (11 апреля 2017 - 20:30 )
Типичный, классический кузнец.
#342
Отправлено 11 апреля 2017 - 21:30
Там вроде ни чего интересного https://pastebin.com/AxfE8f7s
Типичный, классический кузнец.
#343
Отправлено 11 апреля 2017 - 21:57
Неправильно используешь промисы.
Промисы надо цепочками использовать или скопом (Promise.all), ты их лепишь также как каллбэки
примерно так https://pastebin.com/q5fvr9s9
и забей на эти foreach после sequelize, если не хочешь чтобы он в объекты данные заворачивал raw: true передаешь в findAll
по поводу ошибки - надо весь код смотреть, но мне кажется количество свободных соединений заканчивается на моменте когда делаешь запрос.
заюзай нормальный middleware на сессию, а не этот онанизм с authorize при каждом запросе
https://github.com/expressjs/session
гы гы сайты, кнопка, ангуляр доллор смузи барбершоп
#344
Отправлено 11 апреля 2017 - 22:23
Вот не помню уже почему я отказался от сессий, вроде, где то в доках к passport вычитал, а может и нет. Я планировал делать "универсальную" аутентификацию, и для браузеров и для мобильных приложений (я хз как там с сессиями) и мало ли для чего еще. Тупо все зашивать в токен, геолокацию, какие то данные клиента и потом все это дело проверять и обновлять токен.
но мне кажется количество свободных соединений заканчивается на моменте когда делаешь запрос
Бык у меня всего соединений, найти юзверя, и потом найти его заказы. Или я чего то не догоняю?
Сообщение изменено: kuznets (11 апреля 2017 - 22:25 )
Типичный, классический кузнец.
#345
Отправлено 11 апреля 2017 - 22:40
соединение к базе асинхронное. и оно просто не успевает соединиться
вот так делаешь в orderscontroller
var authorize = require(__dirname + '/authorize.js')({
db: db
}).authorize;
и так делаешь в https://pastebin.com/5PvG1BH4
ну а в целом код лучше переписать, хлам полный
Вот не помню уже почему я отказался от сессий, вроде, где то в доках к passport вычитал, а может и нет. Я планировал делать "универсальную" аутентификацию, и для браузеров и для мобильных приложений (я хз как там с сессиями) и мало ли для чего еще. Тупо все зашивать в токен, геолокацию, какие то данные клиента и потом все это дело проверять и обновлять токен.
используй готовые модули, сам без должных знаний и навыков сделаешь дырявую как решето авторизацию, которую сможет сломать 13 летний кулхацкер
гы гы сайты, кнопка, ангуляр доллор смузи барбершоп
#347
Отправлено 12 апреля 2017 - 05:38
соединение к базе асинхронное. и оно просто не успевает соединиться
authorize(req).then(function (foundUser) {
return db.users.findById(decodeToken.id) .then(function (data)
remotedb.allDocs(...)
.then(function (resultOfAllDocs) {
return localdb.put(...);
})
.then(function (resultOfPut) { // наступит только когда выполнится return localdb.put(...);
return localdb.get(...);
})
.then(function (resultOfGet) { // наступит только когда выполнится return localdb.get(...);
return localdb.put(...);
})
.catch(function (err) {
console.log(err);
});
Сообщение изменено: kuznets (12 апреля 2017 - 05:40 )
Типичный, классический кузнец.
#348
Отправлено 12 апреля 2017 - 19:22
http://stackoverflow...error-read-econ
в authorize.js ты всё таки сделай вместо return false;
return Promise.reject('Your error');
если возвращаешь промис, возвращай его, а не тут булевский тип, там промис
гы гы сайты, кнопка, ангуляр доллор смузи барбершоп
#349
Отправлено 12 апреля 2017 - 19:39
У меня щас authorize выглядит так но ошибка все та же.
module.exports = function(vars) {
const db = vars.db;
const JwtOptions = require('../config/jwt_options');
const jwt = require("jwt-simple");
return {
authorize: function (req) {
let decodeToken = jwt.decode(req.cookies.token, JwtOptions.secretOrKey);
return db.users.findById(decodeToken.id).then(function (data){
return data;
}).catch(function (err) {
console.log('authorize error: ' + err);
return err;
});
}
}
}
Сообщение изменено: kuznets (12 апреля 2017 - 19:42 )
Типичный, классический кузнец.
#351
Отправлено 12 апреля 2017 - 21:03
Вот контроллер с некстами https://pastebin.com/t73NphmM
Вот авторайз https://pastebin.com/UwkEDzgn
ошибка та же.
Типичный, классический кузнец.
#352
Отправлено 12 апреля 2017 - 22:18
в authorize некстов не увидел.
значит что-то не так делаешь.
вообще по нормальному это вот так делается https://pastebin.com/2EEAxrFR
гы гы сайты, кнопка, ангуляр доллор смузи барбершоп
#353
Отправлено 12 апреля 2017 - 22:49
вообще по нормальному это вот так делается https://pastebin.com/2EEAxrFR
Тогда в разных контроллерах функция isAllowed будет повторяться, что не есть гуд. По этому я ее вынес в authorize.
Типичный, классический кузнец.
#354
Отправлено 12 апреля 2017 - 23:56
если ты следуешь паттерну MVC, то то что ты называешь контроллерами, есть роуты и вообще быть им в отдельном файле
isAllowed проверит разрешен ли пользователю доступ к данному роуту
в той структуре приложения что ты пытаешься сделать, теряется любая универсальность, тебе заказчик может сказать сделай мне тоже самое но только по другому адресу и ответ апи отформатируй как мне надо или вообще зашифруй, на фронте расшифруй - и тут ты будешь крайне озадачен.
routes.js и что то типо такого в нём, isAllowed отрежет тех кто не авторизован
app.get('/route', isAllowed, (req, res) => MyController
.findData()
.then(data => res.json(data))
.catch(err => res.json({success: false, err: err.message}));
гы гы сайты, кнопка, ангуляр доллор смузи барбершоп
#355
Отправлено 25 апреля 2017 - 21:22
Ну в общем проблема не в промисах была и не в кривом коде.
https://community.f-...ause/td-p/88447
http://holdemmanager...9.html#F-Secure
Поставил касперского, все работает.
Типичный, классический кузнец.
#357
Отправлено 25 апреля 2017 - 21:34
Я се минт ставил, он на моем железе под нагрузками зависал и спасало лишь принудительная перезагрузка.
А кроме этого я пользую много софта AutoCad, PremierPro и пр. а жесткий ссд всего 128гб, как бы не хватит на 2 системы. Виратуалка отстой.
Типичный, классический кузнец.
#358
Отправлено 25 апреля 2017 - 21:45
А чем виртуалка плоха? У меня на ноуте тоже 128 гб ссд, основная ось - https://elementary.io(та же убунта, только посимпатичнее, с закосом под иос), винда второстепенная - на ней бегает всякий софт, который только для винды. Вроде нормально всё работает уже несколько лет стабильно.
Я не знаю, как там у винды дела с повершеллом и их попыткой запилить линукс в винду (лол), но без терминала лично я как без рук. На винде для веб-девелопмента неудобно вообще всё впринципе. Довольно унылая платформа. Ну это, имхо, конечно же.
Вначале делаю, потом думаю
#360
Отправлено 25 апреля 2017 - 23:39
Ну в общем проблема не в промисах была и не в кривом коде.
https://community.f-...ause/td-p/88447
http://holdemmanager...9.html#F-Secure
Поставил касперского, все работает.
это 3.14zdec))) используй мак, бед не знай
гы гы сайты, кнопка, ангуляр доллор смузи барбершоп
Читать еще на тему: PHP, Javascript, HTML/CSS, SQL, Ruby, Java, C/C++, Visual Basic, C#
Тематические форумы →
Software & Designing →
Программирование →
Ищу тьютора/репетиторa по проекту Java.Автор темы: Chichi, 21 апр 2020 |
|
|
||
Тематические форумы →
Software & Designing →
Программирование →
Пишу сайты грамотно на своём движке!Автор темы: alx4ever, 25 окт 2019 |
|
|
||
Тематические форумы →
Software & Designing →
Программирование →
Estonian language pack Opencart 2.3Автор темы: libero23, 29 ноя 2017 |
|
|
||
Тематические форумы →
Software & Designing →
Программирование →
Ищу Java Developer(a) для работы в Амстердаме. Зарплата 4000 евро чистымиАвтор темы: Oxana09, 07 ноя 2017 |
|
|
||
Тематические форумы →
Software & Designing →
Программирование →
Ищем в команду разработчикаАвтор темы: Gleb Makarov, 02 ноя 2015 |
|
|









