Closed vviital closed 7 years ago
What tools we can use to convert: 1) xml to objects 2) some html chunk to object (list of divs with some child elements which have classes, each class will be represent single property of object).
For XML please see https://github.com/assistunion/xml-stream and links at https://github.com/node-xmpp/node-expat#benchmark.
For HTML you could use https://github.com/cheeriojs/cheerio
For further references please see XML parsing in Node.js slides.
Can you suggest good reading about mongoDB and mongoose and data modelling. Documentations are quite large. I think good number of pages is about 40-50 in any languages - either english either russian.
How in more convenient way I should write async method in nodejs. Because when I use my own "events", I must inherits from EventEmitter and catch event by .on('event', callback) and it's rather boring to code?
Can you suggest good reading about mongoDB and mongoose and data modelling.
I would suggest to start learning data modeling for MongoDB from https://docs.mongodb.org/manual/core/data-modeling-introduction/
How in more convenient way I should write async method in nodejs. Because when I use my own "events", I must inherits from EventEmitter and catch event by .on('event', callback) and it's rather boring to code?
EventEmitter and related functions, e.g. listeners attach using on
method is synchronous. Please see draft of a Event loop and EventEmitter in Node.js slides and linked resources for details.
For managing complexity arising from asynchronous code please see for Promise interface, bluebird and async libraries.
Can you suggest useful materials about client side programming without mvc framework, but with handlebars and etc, because it's a large amount of informations exists and I don't known with what start.
http://blog.izs.me/post/59142742143/designing-apis-for-asynchrony you asked to recall about the article
Can you add new information to this link "second milestone": https://github.com/grsu/web-dev-materials/tree/master/textbook#%D0%92%D1%82%D0%BE%D1%80%D0%B0%D1%8F-%D0%B2%D0%B5%D1%85%D0%B0-%D1%81%D0%BA%D0%BE%D1%80%D0%BE
Can you suggest libs for authorization and user registration, and some usefull link for how it correctly use
Please checkout http://passportjs.org and read documentation and guides available on that website.
Тут такой вопрос, есть модель Game, она в себе содержит массив вопросов и они все получаются одном запросом.
export default DS.Model.extend({
name: DS.attr('string'),
questionTime: DS.attr('number'),
questions: DS.attr()
});
я хотел бы сделать, что бы вопросы были отдельной сущностью в модели:
export default DS.Model.extend({
name: DS.attr('string'),
questionTime: DS.attr('number'),
questions: DS.hasMany('question')
});
вроде все сделано верно, но не работает (первый вариант работает, второй нет) - тут получается ошибка исполнения в консоле браузера, по ней ничего толкового нагуглить не могу. Можно ли сделать со связью?
Так а какая ошибка?
Полагаю проблема в том, что у вас данные передаются в ответе в форме отличном от требуемого. Какой у вас адаптер используется и какие данные приходят в ответе?
Кстати, а вам нужно менять questions
или нет? Посмотрите https://guides.emberjs.com/v2.5.0/models/relationships/#toc_readonly-nested-data - если менять вопросы не нужно, DS.attr()
является хорошим простым решением.
меня не нужно вопросы изменять (на данном этапе), просто хотелось поэксперементировать, а ошибка да - с адаптером, он просто не понимает, что такое вопросы, я потом еще сам попытаюсь решить эту проблему - если не получится, то скину и ошибку и все остальное, на чем вылетает. Адаптер: https://github.com/grsu-nodejs-project/project/blob/master/client-intgame/intgame/app/adapters/application.js
Тут такой вопрос появился, не могу нигде найти на него ответ: я хочу иметь объект в route, который можно было бы менять при action и что бы его значение можно было использовать в темплейте, грубо говоря такая ситуация: я хочу помнить номер текущего вопроса и при ответи на него отображать новый вопрос на том же пути, как это можно сделать? UPD: я нашел решение проблемы через контроллер, но хотел бы что-нибудь другое - вы говорили, что они уже устарели и в документации не сильно рекомендуют ими пользоваться
Пока контроллеры необходимая прослойка между роутом и компонентами, если вы его используете только для передачи данных - всё хорошо. Просто не нагружайте его поведением, стараясь разнести его по компонентам.
Возник такой вопрос, как такое лучше делать: есть интерфейс на клиенте для добавления игры - разная инфа про игру вводится + ссылка на архив чгк, откуда выкачать. Хочется все это сделать через this.store.createRecord(), но только запрос идет через сервер, а на клиенте создается не полный объект, как это можно хорошо обойти?
Еще вопрос, почему когда я делаю сохранение или удаление - от меня требует, что бы я что-то прислал в ответ, а когда я шлю просто ненужный json в духе { ok: 'ok'} мне пишет warning? Сохранение выполняется через store
Могли бы вы посоветовать, что почитать про аутентификацию и авторизацию, про разные методы, различные их аспекты, не библиотеки которые это позволяют делать, а на просто на концептуальном уровне, про проблемы с этим связанные, что-нибудь хорошое по этой теме. Ну и просто что-нибудь почитать про вещи которые не были освещены в курсе, но полезные, для расширения кругозора. То что вы скидывали и было на лекциях я практически все уже просмотрел, кроме больших спецификаций и доклада одного.
Из короткого формата можете посмотреть блог https://auth0.com/blog это компания, котороя делает решения в области аутентификации. Пишут много о своих продуктах, но концептуально и популярно объясняют многие подходы.
А где можно найти вопросы к экзамену?
Каждое предложение из содержания учебного материала - это вопрос к экзамену.
Сейчас пересматривал лекции и нашел один не понятный момент, может вы проясните: https://robrich.org/slides/anatomy_of_a_web_request/#/20 вопрос вот в чем, почему мы можем посылать ответ до того, как установится соединение, ведь формально в рамках tcp мы это может делать только после завершения тройного рукопожатия (я так это понимал и в википедии вроде так же написано). Т.е. тут получается что нам не важна сама процедура установки соединения до конца?
Эта картинка из статии https://lwn.net/Articles/508865/, которая описывает расширение TCP Fast Open. Общее представление можете получить из https://en.wikipedia.org/wiki/TCP_Fast_Open
Детали можете найти в статье lwn.net и RFC.
Спасибо, разобрался
Вот статья о async
/await
https://zeit.co/blog/async-and-await
Можете скинуть материалы, о которых вы говорили, про то, в чем нужно разобраться. И каким образом будете их скидывать, тут через гит, или как-нибудь по-другому, например, на почту?
@vviital ответил на почту.
https://github.com/grsu-nodejs-project/project