2013-03-22 1 views
0

Я должен разработать веб-приложение с HTML 5 и Javascript для клиентской стороны. Но мне нужно использовать функциональность, которая предоставляет собственную библиотеку клиента (.dll/.so) для обработки некоторых данных на компьютере с C/C++.Как написать собственный Javascript API (на стороне клиента) для собственной библиотеки кода (C/C++)

Мне нравится писать свой собственный API в Javascript для доступа к родной библиотеке, например NodeJS's addons, но эти аддоны доступны только от NodeJS (на стороне сервера). Также есть хорошо зарекомендовавший себя NPAPI, но похоже, что PPAPI Google хочет его заменить: я не мог решить ни одного из них.

Есть ли что-то похожее на дополнения NodeJS для клиентской стороны, которые позволяют мне сосредоточиться только на C++, Javascript и HTML 5?

Спасибо.

+0

вы должны посмотреть @ http://asmjs.org/ и @ https://github.com/kripken/emscripten – generalhenry

ответ

1

Не в общем смысле. Аддоны для node.js разрешены, потому что существует неявное доверительное отношение между автором кода и человеком, выполняющим его. (В действительности, это, как правило, один и тот же человек.) В веб-браузерах такого доверия нет - просматривая веб-сайт, вы позволяете тому, кто писал этот сайт, запускать некоторый код в вашей системе. Поскольку вы (возможно) не доверяете им полностью, то, что они могут сделать в Javascript, ограничено набором известных безопасных действий. Загрузка DLL очень важна не в этом наборе.

Как отмечалось generalhenry в комментариях, есть некоторые проекты, как emscripten скомпилировать нативный код Javascript, или Google Native Client запустить песочницы машинный кода в браузере, но эти технологии все еще ограничены в возможностях, и довольно незрелая еще. В конечном итоге вам нужно будет смириться с тем, что код, запущенный в браузере, будет ограничен.

Смежные вопросы