@nodejs_ru

Страница 1513 из 2748
Iosif
23.01.2018
11:37:11
@mongodbrussian

SilencerWeb
23.01.2018
11:37:40
да я чет не попробовал, спасибо)

Vint
23.01.2018
11:47:30
Всем привет! Вчера мне посоветовали Data Mapping паттерн для задачи, но я нахожу только абстрактное описание и 3 ОРМ - Bookshelf.js TypeORM Massive.js Правильно ли я понял, что с секвалайзом реализовать Дата Маппер нереально?
Только не bookshelf. Что угодно, но только не его, имхо. Возможно objection.js как последователя bookshelf, но там могут быть те же или схожие грабли, в руках не держал. TypeORM выглядит прогрессивное, но если не хочется "dive into ts", то на чистом js не факт что будет так же красиво и удобно. Про massive ничего не могу сказать.

Google
Vint
23.01.2018
11:49:23
ORM, которая завязана на поля в БД, но ничего о них не знает (нет описания схемы) - ад.

Vint
23.01.2018
11:50:35
А можно в секвалайзе реализовать дата мапинг, как Вы мне вчера советовали?
Я sequelize как datamapper не советал, я лишь говорил, что говен на него много необоснованных. Обоснованные тоже есть, но люди умеют выкручиваться.

Vint
23.01.2018
11:53:58
Спасибо
Синтаксис тоже странный. forge или forge? Каждый день этот вопрос. И прочие штуки. Но это вкусовщина. Возвращает коллекции как интанс своего класса. Работать с ними очень херово, т.к. есть только прибинженные методы лошади (lodash). Удобно иногда, но чаще нужен тупо массив для последующей обработки кода. Привет, sqlz!

И вопрос - возможно ли это Или надо менять ОРМ и на какую тогда?
В целом-то, если сделать отдельный слой, то DM можно всунуть хоть между гречкой и Луной. Поэтому, к sequelize это тоже применимо, но как-то сбоку. Я бы смотрел на TypeORM, но, опять же, надо понять, есть ли там жизнь без ts. И изучать другие варианты. Лично не могу ничего посоветовать, но в чате ещё много людей, которые, скорее всего, работали и могут подсказать)

Vint
23.01.2018
12:07:18
Спасибо Я ещё не до конца осознал этот паттерн, буду копать дальше пока)
Ещё очень важно понимать, что выбрав какой-либо фреймфорк /орм, придётся в него очень плотно погружаться. Везде будут баги, костыли и кучи тонкостей работы. И чем больше поделка обещает - тем больше проблем. А хороших примеров и доков лучше не ждать, всё придётся проверять руками. Ну, это при условии написания чего-то сложного, а не простой rest-прослойки к БД.

Vint
23.01.2018
12:10:38
А про objection js в целом что сказать можешь?
Не могу. И судя по всему, даже не захочу погружаться) Бегло по доке - те же яйца вид с боку. Мне достался bookshelf, страдаю, но пока деваться некуда. Аналога точно не хочу. Но могу ошибаться, поэтому лучше всё-таки попробовать. Попробовать все эти штуки достаточно легко, если есть примеры сложных и комплексных задач. Каждую реализуешь и смотришь, где улыбка, а от чего вспотел)

Eugene
23.01.2018
12:11:42
А можно ссылку на какой нибудь проект с дата маппингом на ноде?

Google
Vint
23.01.2018
12:13:20
Вот именно, что я не сталкивался с большим количеством таблиц и связей в проектах, не смог на настоящих задачах пощупать orm-ки
Вот. Тогда все хороши, до поры до времени. А чуть в сторону - либо стреляться, либо находится чуть более красивый вариант. Но вряд ли есть идеал для всех задач, поэтому я и писал выше, что полное погружение так или иначе.

А можно ссылку на какой нибудь проект с дата маппингом на ноде?
Это вряд ли поможет (у меня такого нет, если что). Любой проект снаружи не даст понять, что там внутри. И его успешность и качество явно не от конкретных технологий зависят, а от рук и головы.

Gleb
23.01.2018
12:18:54
ребят, глупый вопрос. Тренируюсь с Коа, поставил koa-session и koa-session-mongoose, для хранения сессий в БД. Я ожидал, что при get на раут эти обработчики будут автоматически создавать сессии для клиента, и в дальнейшем обмениваться куками. Но, оно себя ведет не так. Пока я руками не запишу какое-то значение в сессию, обьект сессии не создается, и обмен куками не происходит. Это нормальное поведение? или я что-то не так дклаю?

Vint
23.01.2018
12:20:53
Ну так я хочу понять, как правильно
Правильно - быстро, качественно и дёшево) Но такого не бывает. Поэтому, надо зарываться в теорию и практику, искать что-либо для себя, основываясь на опыте и предпочтениях. Который раз выскажу мнение, что Нода слишком молода, поэтому все "правильности" и плюшки здесь каждый год меняются или появляются новые. И так будет ещё долго, пока основная часть проектов не решит кучу проблем (багов, хотя бы). Я про ORM, а не все пакеты.

Таймураз
23.01.2018
12:23:03
Ладно Спасибо ещё раз)
В экосистеме js есть ярковыраженные лидеры в решении различных задач, но все равно находятся более подходящие под специфичные кейсы инструменты

Ладно Спасибо ещё раз)
Из-за того, что язык можно вертеть, как хочешь, получается большое кол-во различных инструментов, в которых можно разобраться только пощупав их самим

Vint
23.01.2018
12:23:48
Ну у нас yii используется, вроде как максимум выжимается из функционала (но это неточно??)
А у меня тут проект с ООПом головного мозга (явно php-стайл, но это тоже не точно). И этот ООП пронизан букшелфом насквозь. Очень адово, очень сурово, сделать что-либо новое, что не ложится на копипаст смежной логики - просто ад. Ну, или это я такой привереда безрукий, что вряд ли)

Таймураз
23.01.2018
12:25:08
Eugene
23.01.2018
12:25:50
Есть курсы
По архитектуре?

Таймураз
23.01.2018
12:26:24
По архитектуре?
А, ты не насчет языка Архитектура, в целом, агностична относительно языков

Не совсем правильно выразился

Eugene
23.01.2018
12:26:54
Vint
23.01.2018
12:27:14
Ну должен же какой то бест практис быть
Не должен, в том-то и дело. Можно посмотреть видео-доклады крутых людей из разных крутых проектов с конференций. Каждый обмазывается своим и хвалит своё. И много кто потом хвастается, как разгребал это всё, когда начали те или иные проекты. Но это всё про реально крупные проекты.

Eugene
23.01.2018
12:27:16
Не совсем правильно выразился
Как делать правильно Все уже работает, так сказать Теперь надо, чтобы работало правильно

Таймураз
23.01.2018
12:32:23
Как делать правильно Все уже работает, так сказать Теперь надо, чтобы работало правильно
Понимаю, что спрашиваешь, но я сейчас вожусь в дерьмом и косноязыко изъясняюсь

Google
Alex
23.01.2018
13:01:38
Ребят, пытаюсь получить данные от гугл мэпс, но в консоль падает ошибка access control origin. Это мне нужно добавить соответствующий заголовок, или как-то по-другому запрашивать данные ?

Alex
23.01.2018
13:04:30
Мой сервер отдает

Или должен сервер гугла ?

Anton
23.01.2018
13:05:10
гугла

ты из сервера посылаешь запрос?

Alex
23.01.2018
13:06:24
Из под чего ? Я из своего скрипта пытаюсь получить маршрут между двумя точками от гугла. Запрос происходит, во вкладе Network, я вижу успешный ответ от сервера, но в консоли ошибка

Anton
23.01.2018
13:07:25
скрин ошибки и запроса

Alex
23.01.2018
13:08:06
Апи поддерживает только json и xml





Alex
23.01.2018
13:09:56
Я делаю запрос через axios

Anton
23.01.2018
13:10:40
ну если 200 то гугл не причем

Demuz
23.01.2018
13:10:41
Странно. Вроде у гугла JSONP. Вроде Acces Control Allow Origin не должно происходить.

Anton
23.01.2018
13:11:14
у аксиоса есть какие то флаги на счёт cors

Alex
23.01.2018
13:11:35


Просто вот боль

Anton
23.01.2018
13:11:43
попробуй их включить

Alex
23.01.2018
13:11:47
Пробовал jsonp - 404

Google
Demuz
23.01.2018
13:12:10
Пробовал jsonp - 404
Не понял. На данный момент без jsonp чтоли?

Alex
23.01.2018
13:12:28
Гугл не поддерживает jsonp

Demuz
23.01.2018
13:12:33
Если так, то вон сверху так и написано. Будет полюьому выходить Acces Control Allow Origin

Anton
23.01.2018
13:12:50
CORS error No 'Access-Control-Allow-Origin' header is present on the requested resource · Issue #569 · axios/axios https://github.com/axios/axios/issues/569

Demuz
23.01.2018
13:12:52
Гугл мапс только так и работают. Сейчас покажу.

Гугл не поддерживает jsonp
Ой, извиняюсь. Я с directions не работал. Только с maps. Там jsonp юзается. А у вас явно проблема в Acces Control Allow Origin. Это означает что вы пытаетесь запустить скрипт, который НЕ находится на вашем хосте. По идее так не должно быть.

Alex
23.01.2018
13:15:49


попробуй их включить

Alex
23.01.2018
13:16:02


Admin
ERROR: S client not available

Anton
23.01.2018
13:16:59
данные которые тебе приходят от гугла - валидные?

Alex
23.01.2018
13:17:18
Запрос корректный

На выходе

Я имею ввиду во влкдаке "Сеть" Хрома

Demuz
23.01.2018
13:18:39
это же кросдоменные запросы вроде
Ну вот и ответили сами. Он со своего хоста делает запрос на удаленный скрипт. Вот и система ругается: запрещено запускать скрипты, не пренадлежащие данному хосту.

Demuz
23.01.2018
13:19:48
А там текст только козвращается, да ? Странно что вобще эта ошибка выходит.

Anton
23.01.2018
13:20:36
на крайняк, туши ошибку в катч и забей просто

Demuz
23.01.2018
13:20:37
Но моих файлов есть cors заголовок
Если вам выдается явня ошибка такого рода, то она есть. Что-то не срабатывает всякий корс шморс.

Google
Alex
23.01.2018
13:20:39
А там текст только козвращается, да ? Странно что вобще эта ошибка выходит.
От гугла большой обьект возвращается, с маршрутом. И на вид там все правильно

Demuz
23.01.2018
13:20:57
Дайте ссылку на этот их апи. я почитаю.

Alex
23.01.2018
13:21:04
на крайняк, туши ошибку в катч и забей просто
Так я же ответ не могу получить

https://developers.google.com/maps/documentation/directions/intro#Waypoints

Даже если обернуть try catch, то у меня в переменной оказывается undefined

Demuz
23.01.2018
13:24:07
https://stackoverflow.com/questions/28359730/google-place-api-no-access-control-allow-origin-header-is-present-on-the-req

Alex
23.01.2018
13:24:36
Это же jsonp

Demuz
23.01.2018
13:25:02
Да.

Вы надоели братан )))

Это штука в ответ просто текст выдает или на карту вашу проиниченную ставит отметки и тп?

Короче, просто я сейчас ухожу. Точно в сторону JSONP копайте. И почитайте про него хотя бы немного.

Alex
23.01.2018
13:26:59
Класс. Спасибо за совет. Обязательно пну гугл, чтобы запилил jsonp

Demuz
23.01.2018
13:27:14
Это же jsonp
Смотрите, если эта штука просто ответ в виде текста возвращает, то нет ничего страшного. Но здесь она возвращает ценый обрабатывающий скрипт. Без JSONP это запускаться не будет.

Anton
23.01.2018
13:27:29
Getting 'Access-Control-Allow-Origin' on a GET request (axios.get) · Issue #1186 · axios/axios https://github.com/axios/axios/issues/1186

Alex
23.01.2018
13:27:49
А что делать если ответ нельзя получить в формате jsonp ?

Anton
23.01.2018
13:27:57
челик пишет что ошибка из-за localhost

This MDN page has a lot of good information on the CORS and the access-control-allow-origin-header. My first guess looking at the headers is that the server set the access-control-allow-origin header to the http://xxxxxxxx.com example domain. But you are trying to hit it from http://localhost which is not the same domain.

как вариант

хотя обычные карты у меня и под локалхостом работали

Alex
23.01.2018
13:29:54
У меня карты работают. Но мне еще нужен directions api

Demuz
23.01.2018
13:30:03
А что делать если ответ нельзя получить в формате jsonp ?
Вы п*здец братан. JSONP Это почти тот же жсон. Просто запрос так сделайте как написано по ссылке выше и все. С stackoverflow. Потом отпишитесь.

Страница 1513 из 2748