Vladimir
В том и суть
Vladimir
Какой то из пакетов определяет toJSON
Vladimir
на Object.prototype
Vladimir
или Error.prototype
Anonymous
Какой то из пакетов определяет toJSON
Нашел это поиском по проекту if (!Error.prototype.toJSON) {
Object.defineProperty(Error.prototype, 'toJSON', {
enumerable: false,
Anonymous
в пакете errs
Vladimir
Ну вот от этого пакета надо избавляться
Anonymous
'Обожаю' мир npm пакетов (
Anonymous
Спасибо большое за помошь. Мне как то в голову не пришло что где то в пакете может быть такая херня ))
Anton
Vladimir
вообще на гитхабе writeable
Anonymous
Так переопределять прототипы и своем коде не гуд, не то что в библиотеке
Vladimir
может обновить стоит попробовать?
Vladimir
Но да, нормальные люди так не делают
Anonymous
cycle, elm, html5 в чяте ноджс. вроде бы все ок, но про голанг снова забыли(
Vitaliy
о! а я правильно понимаю, что elm можно в js для ноды транслировать? 8)
Anton
Дима
purescript выглядит слегка поадекватнее чем elm
Anton
А ну так да, можно обоих в ноду пихать
Anonymous
elm нельзя
Sergey
о спасибо за pureScript
Sergey
искал подобное
Sergey
чуть не начал свое делать
Sergey
0_-
Anonymous
ghcjs же
Дима
Ну это интересный опыт сам по себе
Sergey
да вот думаю доделать тот дизайн, что есть сейчас и выкатить сообществу
обосрут конечно, мол НИНАДА!
Дима
Нинада конечно 😏 Но ты всё равно выкатывай
Дима
Сейчас попробую поискать одну статью хорошую про чувака, который свой язык пилил
Дима
Познавательно так
Sergey
буду благодарен!
Sergey
@ZeroBias скинь в лс как найдешь, пожалуйста
А то в чате потерять можно
Anonymous
опыт нужен, язык
Anonymous
Рубикон
есть библиотека ws .. для использование её в nodejs обязательно делать http сервер?
Рубикон
нашел ( https://learn.javascript.ru/websockets ) судя по примеру в этом нет необходимости
Anonymous
Anonymous
Рубикон
но там написано обратное
Серверный код можно писать на любой платформе. В нашем случае это будет Node.JS, с использованием модуля ws:
и далее пример
Anton
да
нет, это будет не http сервер, а ws сервер
Anton
может быть nodejs? О_о
Anonymous
Anonymous
Anonymous
и слава богу, не приведи аллах писать http-сервера
Anton
это не сервер, и, как оказывается, даже не совсем HTTP
Anonymous
это сервер, и вполне хттп
Anonymous
не вижу где в абзаце этом написано что это не сервер и не хттп
Anonymous
вроде наоборот как раз написано
Anton
Например, в запросе есть тело, но в заголовках поле "Content-Length" отсутствует (что нарушает соглашения HTTP).
Anton
Anonymous
но чтобы инициализировать вебсокеты нужно сначала отправить по хттп запрос и получить ответ
Anton
вот я про этот запрос и написал, это не HTTP запрос, а похожий на HTTP запрос
Bohdan
что значит похожий
Anonymous
где это не хттп-запрос?
Anonymous
GET /chat HTTP/1.1
Host: server.example.com
Upgrade: websocket
Connection: Upgrade
Origin: http://javascript.ru
Sec-WebSocket-Key: Iv8io/9s+lYFgZWcXczP8Q==
Sec-WebSocket-Version: 13
что тут не хттп?
Anton
вот ответ сервера, подтверждающий переход на ws
HTTP/1.1 101 Web Socket Protocol Handshake
Upgrade: WebSocket
Connection: Upgrade
Sec-WebSocket-Origin: http://example.com
Sec-WebSocket-Location: ws://example.com/demo
Sec-WebSocket-Protocol: sample
8jKS'y:G*Co,Wxa-
как видишь тут есть тело, но нет Content-Length (что нарушает соглашения HTTP)
Anonymous
я не вижу тут тела
Anton
8jKS'y:G*Co,Wxa- - это тело
Anonymous
а откуда оно взялось вообще?
Anton
в смысле?
Anonymous
https://tools.ietf.org/html/rfc6455#section-1.3 не должно быть там никакого тела
Anonymous
короче если вопрос был в том, стоит ли руками пускать http - то можно не пускать, ws это сделает сам
Anonymous
но http сервер все равно поднимется, без него вебсокеты работать не будут
Anton
мы походу про разные версии протокола говорим
Anonymous
я вообще не помню там когда-либо тело и не могу представить зачем оно нужно
Michael
Michael
дальше всё нормально
Anonymous
а, нашел где есть body, действительно в первом драфте
Anton
https://tools.ietf.org/html/draft-hixie-thewebsocketprotocol-76#section-1.3
Anton
в 76-й версии тоже есть
Michael
и кому нужен этот hixie?