HTML5 позволит веб-приложениям делать одноранговые HTTP-соединения?

Потому что вы перебираете ключи объекта. Чтобы вернуть объект в вашем случае, вы должны использовать данный ключ, чтобы получить его значение:

render() {
    //this.props.phone contains the objects "Samsung", "iPhone", and "Google"
    return (
        Object.keys(this.props.phones).map((type) => {
            console.log(this.props.phones[type])
            ...
        })
    )

}
99
задан Peter O. 17 December 2012 в 01:50
поделиться

4 ответа

Вот почему существуют менеджеры компоновки: они сообщают содержащимся компонентам, где и насколько они должны быть большими.

Поскольку вы говорите о редакторе UML, используете ли вы содержащиеся компоненты Swing для представления различные объекты на диаграмме (например, компонент класса)? Если да, то у вас впереди много работы (хотя это не обязательно плохой подход). Я бы рекомендовал создать объект ограничений, который определяет местоположение объекта в «единичном пространстве», а затем умножить его на текущий размер.

org / TR / 2008 / WD-html5-20080122 / # network

Важно отметить, что возможности все еще обсуждаются. Было бы неплохо иметь возможность создавать веб-приложения "локальный чат" :)

jrh

108
ответ дан 24 November 2019 в 05:05
поделиться

Есть ряд причин, по которым это может быть сложно:

  1. Межсетевые экраны (даже просто NAT) могут затруднить такое соединение на гораздо более низком уровне протокола, чем даже HTTP. С моей шляпой по ИТ-безопасности это кажется прекрасным способом открыть произвольные порты на машине, просто посетив веб-сайт - и поэтому он будет агрессивно заблокирован практически всеми корпоративными ИТ-системами.
  2. HTTP по своей сути является клиентом. серверный протокол. Хотя имитировать дуплексную связь с помощью длинного опроса (а также несколько других методов) достаточно просто, это не особенно эффективно.
  3. Это открыло бы большую дыру для XSS-атак.

WebSockets разработан для решения этой проблемы. вторая из этих проблем, но (я полагаю, сознательно) не две другие. Когда в спецификации HTML5 говорят о одноранговой сети, они говорят о полнодуплексном обмене данными между сервером и клиентом, а не между одним клиентом и другим.

Однако было бы просто реализовать правильный сетевой стек поверх веб-сокетов - при условии, что все коммуникации будут по-прежнему делать через сервер. Я видел, как это делалось с использованием длинного опроса (мой друг из Uni написал полный стек TCP / IP, используя длинный опрос).

4
ответ дан 24 November 2019 в 05:05
поделиться

Второй harshath.jr: у вас вполне может быть сервер, действующий как каталог (открывающий "происхождение" каждого подключенного агента ; origin - это схема + хост + порт, как в draft-abarth-origin , со схемой «ws» или «wss»). Затем вы можете инициировать одноранговые соединения WebSocket; СОП разрабатывается благодаря CORS . Конечно, это означает, что каждый агент (то есть браузер) должен будет встроить свой собственный сервер WebSocket (а-ля Opera Unite).

Между тем, сделайте это способом XMPP / IRC / и т. Д.: Без одноранговых узлов. одноранговое соединение, но соединения WebSocket с центральным сервером (или сетью!) для передачи сообщений подключенным агентам (в конечном итоге с использованием определенного «подпротокола» WebSocket)

РЕДАКТИРОВАТЬ: обратите внимание, что все это фактически выходит за рамки HTML5 (все эти вещи когда-то были частью HTML5, но были разделены на отдельные спецификации)

0
ответ дан 24 November 2019 в 05:05
поделиться

Вся идея Web Sockets заключалась в решении проблем с Firewalls и прокси http://www.kaazing.org/confluence/display/KAAZING/What+is+an+HTML+5+WebSocket

0
ответ дан 24 November 2019 в 05:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: