Возможно ли использовать API API Google Appengine с языком DART? Было бы здорово, если бы вы могли указать на некоторые примеры и ловушки, если они есть.Использовать API-интерфейс Appengine Channel с DART
ответ
Решение, которое я рекомендовал, - использовать API канала в JS, чтобы открыть сокет и переслать все сообщения через postMessage или пользовательское событие и получить их в Dart.
Я не уверен, что какое-либо общее решение было открыто, но это должно быть довольно тривиально, и для этого не требуется общий JS-interop.
редактировать: выяснены
редактировать 2:
FYI: Я только что опубликовал библиотеку, чтобы сделать именно это. Надеюсь, это сработает для вас!
Парень из команды Dart портирован клиентская библиотека для Dart: http://code.google.com/p/gae-channel-api-dart/
JS код API канала является собственностью и нет «источника» (ну есть, но удача reverse-engineering that). Google делает это специально, чтобы они могли изменять протокол, лежащий в основе каналов, без бесполезного процесса обновления/отмены.
Так что, если вы будете следовать предложению Шеннона, переписанный код, скорее всего, перестанет работать в какой-то момент в будущем, и вам нужно будет повторить процесс обратного проектирования кода каналов JS.
Лучшим решением было бы назвать код API API каналов от Dart, но на данный момент Darts support for calling JS is rudimentary, но кажется, что они already started working on improving it.
Это может сломаться в будущем. См. Мой ответ. –
Да, но учитывая тот факт, что он работает в Google, имеет смысл полагаться на него, чтобы исправить это, если он сломается. –
@PeterKnego, я не переносил API-интерфейс канала JS, я его обертываю, поэтому он не сломается. По крайней мере, не потому, что изменяется реализация канала. Однако это из-за языка Dart и API. Я стараюсь идти в ногу с ними. –