Дима
и при этом никаких проблем не решает
Anonymous
Из-за хранения на стороне сервера?
Nikolay
да
Nikolay
на самом деле можно это сделать без какой либо серверной стороны
Anton
base64?)
Nikolay
просто слать запрос с текущим урл на сокращалку
Nikolay
и отдавать пользователю
Nikolay
сокращалок урлов куча, можно даже свою написать
Anton
Anonymous
Тоесть делегировать некую вариацию searchID другом сервису, который будет страдать, но ему и положено?)
Nikolay
да
Nikolay
https://bem.github.io/bem-xjst/
Nikolay
вот тут кнопка "Share Link"
Anton
hostname будет уже не твой, это не красиво
Nikolay
все это без серверной реализации
Nikolay
для сокращалки хватит быстрого key value хранилища
Nikolay
memcached, redis
Anonymous
Ну вот и получается searchID)
Nikolay
у браузерной адрессной строки есть ограничение по длинне
Anonymous
типо site.com/search?id="8asd8"
Anton
Oleg
Было дело
Oleg
Баг одного провайдера
Oleg
Там если денег нет - тебя редирект на страницу мол нужно оплатить
Oleg
И в конце ссылки парамерт
Oleg
На который тебя назад вернет
Oleg
Как оплатишь и тп
Anton
cburl?
Anonymous
Oleg
Но админ зафейлился
Oleg
И заблочил все адреса
Oleg
Включая адерс страницы оплаты
Oleg
Итого редирект на страницу оплаты
Oleg
Оттуда редирект на страницу оплаты где в параметре страница оплаты с параметром твоей страницы
Oleg
И так до бесконечности
Джон
#истории
Oleg
До переполнения длины ссылки
Nikolay
> URLs over 2,000 characters will not work in the most popular web browsers. Don't use them if you intend your site to work for the majority of Internet users.
Дима
cool story
Sergey
Чёрт возьми
Oleg
Надо блог завести 😄
Sergey
Ещё меньше нельзя было
Anonymous
спецы по semantic ui есть?
Anton
А. Я думал только поиск
оригинальный URL:
https://github.com/search?l=JavaScript&q=express&ref=searchresults&type=Repositories&utf8=%E2%9C%93
1. Жмешь шаринг
2. JS берет из URLа “search?l=JavaScript&q=express&ref=searchresults&type=Repositories&utf8=%E2%9C%93” и прогоняет через base64. На выходе получаешь “c2VhcmNoP2w9SmF2YVNjcmlwdCZxPWV4cHJlc3MmcmVmPXNlYXJjaHJlc3VsdHMmdHlwZT1SZXBvc2l0b3JpZXMmdXRmOD0lRTIlOUMlOTMK”
3. JS формрует шаринг ссылку: https://github.com/links/c2VhcmNoP2w9SmF2YVNjcmlwdCZxPWV4cHJlc3MmcmVmPXNlYXJjaHJlc3VsdHMmdHlwZT1SZXBvc2l0b3JpZXMmdXRmOD0lRTIlOUMlOTMK
https://github.com/links/ - у тебя есть скриптик, который берет из URLа base64 (c2VhcmNoP2w9SmF2YVNjcmlwdCZxPWV4cHJlc3MmcmVmPXNlYXJjaHJlc3VsdHMmdHlwZT1SZXBvc2l0b3JpZXMmdXRmOD0lRTIlOUMlOTMK), декодит его и делает редирект
Anton
профит
Anonymous
http://platonus-webjedix.c9users.io/ в крайнем справа блоке, как увеличить паддинги без своих стилей?
Anton
в большинстве случаев, 2к символов не переплюнешь
Anton
Nikolay
ага щаз
Anonymous
Oleg
Если нужно ну очень большой набор данных сохранить в стейте - есть 2 варианта
Oleg
1 - это ужать
Oleg
Что-то на вроде базе 64, но с ужиманием
Oleg
2 - это хранить на сервере
Oleg
А в ссылке лишь ключик
Oleg
Кто с ключиком пришел - тому стейт такой вот выдали
Nikolay
ужать — придумать свою систему обозначений типа b:1, c:2
Anonymous
compression.js юзайте
Anonymous
не знаю че она делает, но кажись сжимает
Oleg
Но это раздует бекенд сильно
Oleg
Oleg
Но короткие ключи уже уменьшают потребности
Anonymous
бинарные ключи
Anonymous
👍
Anton
самый надежный - маппать на сервере
самый легкий - энкодить и декодить на клиенте
Anonymous
найди баланс. делай посередине 👍
Vlad
Anton
Anonymous
Anonymous
не стоит благодраностей
Anonymous
сервент*
Vlad
ты же из урла будешь декодить?
Vlad
урл — пользовательский инпут
Anton