LINUX.ORG.RU
ФорумTalks

javascript в текстовом браузере миф?


1

2

Что мы имеем на сегодня?

Из Links js выпилили в 2007 году: «Javascript was removed. The reason is that it is very buggy, Martin Pergel doesn't have time to develop it and code is so messy that no one else can understand it.»

В Links2 то-же самое.

В elinks оно формально есть, включаю - нифига не пашет.

Подскажите плиз как правильно собрать/заюзать elinks либо какой то другой текстовый браузер с поддержкой javascript.

Как собирал его я:

# apt-get install libmozjs185-1.0 libmozjs185-dev libnspr4-dev libssl-dev autoconf g++;
# ln -sf /usr/lib/libmozjs185.so /usr/lib/libmozjs.so;
$ git clone http://elinks.cz/elinks.git;
$ git checkout a229adb19a99292d2705ab742aba5808d75536ca; # current master
$ ./autogen.sh;
$ ./configure --with-spidermonkey --enable-sm-scripting --includedir=/usr/include/js/ --includedir=/usr/include/nspr/;
$ make;

Делаем страницу которая детектирует работу javascript:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
<head>
<title>js test</title>
</head>
<body>

a

<script language="javascript" type="text/javascript">
<!--
document.write('hello world');
//alert('hello world');
//-->
</script>

b

</body>
</html>

После этого запускаем elinks и включаем javascript в настройках Setup -> Options manager -> ECMAScript -> Enable -> 1

Сохраняем, перепускаем elinks, открываем заготовленный html и видим только a и b.

ААААААААААААААААААААА!!! WTF?!!


Ответ на: комментарий от Y

Не любой AJAX-сайт можно перенести на HTML-fallback без упрощений

Лично я хочу уйти от формирования html на сервере и формировать его на клиенте.

xtron
() автор топика
Ответ на: комментарий от xtron

В таких случаях можно использовать какой-нибудь headless браузер для генерации html и отдавать его поискоботам, кстати, тоже)

Но это тоже не даёт полный experience.

Y ★★
()
Ответ на: комментарий от xtron

Лично я хочу уйти от формирования html на сервере и формировать его на клиенте.

Это сэкономит пару килобайт трафика, принеся огромную кучу гемора.

shahid ★★★★★
()
Ответ на: комментарий от Y

использовать какой-нибудь headless браузер для генерации html и отдавать его поискоботам

Да наверно поискоботы пролетают, но меня больше волнуют 0.0001% пользователей текстовых браузеров чем поискоботы)

xtron
() автор топика
Ответ на: комментарий от xtron

Да наверно поискоботы пролетают, но меня больше волнуют 0.0001% пользователей текстовых браузеров чем поискоботы)

Допустим пропатчишь ты один браузер, а вот lynx и w3c (самые трушные) посылают твою затею изначально. Сделаешь сервис-сеппуку? Перейдешь на истинный протокол - telnet? :)

gh0stwizard ★★★★★
()
Ответ на: комментарий от shahid

Это сэкономит пару килобайт трафика, принеся огромную кучу гемора.

С чего бы это?

xtron
() автор топика
Ответ на: комментарий от gh0stwizard

Допустим пропатчишь ты один браузер, а вот lynx и w3c (самые трушные) посылают твою затею изначально.

Буду писать большими буквами: ребята поставьте elinks или запустите иксы

xtron
() автор топика
Ответ на: комментарий от xtron

Буду писать большими буквами: ребята поставьте elinks или запустите иксы

Здорово. А я скажу, что elinks небезопасно пользоваться, а также держать его на машине. Что дальше? Вы все упорно не хотите делать сервис-сеппуку, значит готовы не на все ради своих клиентов. Успокойтесь, вы просто слабы чтобы сделать все по-нормальному. Вы не одни, таких миллионы :)

gh0stwizard ★★★★★
()
Ответ на: комментарий от gh0stwizard

Вы не одни, таких миллионы :)

Миллионам плевать на 0.0001%, но ведь они могут плакать. Как я буду спать?

xtron
() автор топика
Ответ на: комментарий от xtron

Как я буду спать?

Не спите, пишете код: единое апи, дублирующий код, патчите браузеры, это абсолютно неважно. Делайте что-то. Костыльно выглядит? Вы знаете вообще сколько костылей в glibc, gcc? А там задачи решаются для многих миллионов. И ничего, все постепенно выравнивается. Случаем не твиттером или реддитом владете? Не? Один ваш клиент может и обломится. Пусть купит себе железку нормальную.

gh0stwizard ★★★★★
()
Ответ на: комментарий от xtron

Лично я хочу уйти от формирования html на сервере и формировать его на клиенте.

Ага. Пользователи скажут спасибо. Они и так рады тому, что для просмотра html'а нужен минимум двухядерный проц и 4 гига памяти.

shell-script ★★★★★
()
Ответ на: комментарий от gh0stwizard

Костыльно выглядит? Вы знаете вообще сколько костылей в glibc, gcc?

Иногда кушать не могу(((

xtron
() автор топика
Ответ на: комментарий от shell-script

Ага. Пользователи скажут спасибо. Они и так рады тому, что для просмотра html'а нужен минимум двухядерный проц и 4 гига памяти.

Скажут. Все упросится на порядки. Вам js скажем на youtube мешает?

xtron
() автор топика
Ответ на: комментарий от gh0stwizard

elinks небезопасно пользоваться, а также держать его на машине

Почему? Погуглил elinks+security, почитал секьюрити баги elinks, не понял. Меня интересует именно насчёт «держать его на машине», с использованием более или менее ясно.

beresk_let ★★★★★
()
Ответ на: комментарий от xtron

Раньше мешал, теперь я не смотрю ютуб браузером и доволен.

И это не упрощение, когда ради сомнительного функционала нужно городить громоздкую и убогую махину.

shell-script ★★★★★
()
Ответ на: комментарий от gh0stwizard

Спасибо.

Только там всё равно нужно запускать elinks, чтобы можно было использовать уязвимость. Кроме того,

Victim must voluntarily interact with attack mechanism

Я всё ещё не сообразил, чем может навредить бинарник, просто лежащий на винте. Возможно, я упускаю что-то очевидное.

beresk_let ★★★★★
()
Последнее исправление: beresk_let (всего исправлений: 1)
Ответ на: комментарий от shahid

Да не, гимора в самом подходе не особо много. Правда без понятия, чего на текстовых браузерах повылазит.

Если чо - ссылки на пруфы в профиле. Там страница загружается целиком только при первом открытии, а дальше все клики фигачатся через ajax + history api.

Vit ★★★★★
()
Ответ на: комментарий от ritsufag

Вы пишите на рельсе где шаблонизация и сборка страничек это очень накладная операция?

Нет сейчас это ужасный php с html в коде, хочу уйти от этого

xtron
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.