Сокеты в JavaScript
И так, какие способы обращаться из JavaScript к другим серверам не по HTTP протоколу? Искал в Интернете - говорят, что сокетов нет, но есть один способ: обращаться через AJAX к PHP скрипту, который уже обращается с помощью сокетов к нужному серверу. Но хотелось бы способ без задействования сервера, чтобы можно было открыть скрипт в браузере и он смог обратиться сразу к целевому серверу. Flash не предлагать, ибо моя цель использовать только легковесный JavaScript. К тому же изучать новый язык не очень то хочеться. И вообще не люблю я Flash:)
Иными словами, что можно выиграть от такого обращения к целевому серверу?
Цитата:
Интересно, а какова цель такого изврата?
Это вы про что? Про обращение к сокетам через PHP? Ну так и я считаю, что это не самый лучший способ. Во-первых, нужен сервер, во-вторых (это самая главная причина почему не хотелось бы пользоваться этим способом), большая нагрузка не сервер. Меня же интересует как заставить обращаться к серверу JavaScript без промежуточного сервера. Тут в Интернете что-то нашёл про WebSockets, но это всё равно не то, что мне нужно. Хотя нагрузку на гипотетический сервер это снизило бы намного.
я про то чтобы обращаться к серверам не по http-протоколу из javascript
Хочу написать клиент мгновенных сообщений на JavaScript (да, я извращенец). Чисто из профессионального интереса.
Имхо вилкой огород не вскопаешь. То же самое могу сказать и посчет Вашей идеи.
http://habrahabr.ru/blogs/webdev/79038/ но увы, не у всех пользователей новые браузеры установлены. Так, что либо немного подождать светлого будущего и делать на яваскрипте, либо делать сейчас, но на том же флеше...
В современных браузерах есть объект WebSocket:
Единственный вариант реализации сокетов в окне браузера - это через прокладку из Flash или Silverlight. Все. Других вариантов не существует. WebSockets - недоделанная хрень из грядущих стандартов, которая даже в супер-модных браузерах реализована не полностью и через известное место и в ближайшие как минимум 2-3 года будет бесполезна.
Поэтому прокладка остается единственным относительно кроссбраузерным решением. Все остальное (ActiveX, WebSockets, JavaFX и т.д.) либо работает в одном браузере, либо будет работать на очень небольшом количестве компьютеров.
Про веб-сокеты читал. Только вот они мне не очень то подходят - они обращаются только через 80 порт. И так, значит нужна прокладка Flash. Тогда у меня такой вопрос - нет ли у кого-нибудь этой самой прокладки на Flash или Silverlight. Просто на Flash я программировать не умею и по возможности хочу без этого обойтись.
Их можно поискать на сайте google.com