我有一個桌面應用程序,它具有C++後端和HTML5/JS前端。我們目前不得不使用Google V8或Mac Webview和Objective-C來允許Javascript和C++進行通信。有沒有辦法讓他們直接對話而不用中間件?Javascript與C++溝通
試圖完成:
- 共享變量。
- 從C++調用函數到JS。
- 從JS調用函數到C++。
我曾試着用搜索引擎這一切都指向上述解決方案。
我有一個桌面應用程序,它具有C++後端和HTML5/JS前端。我們目前不得不使用Google V8或Mac Webview和Objective-C來允許Javascript和C++進行通信。有沒有辦法讓他們直接對話而不用中間件?Javascript與C++溝通
試圖完成:
我曾試着用搜索引擎這一切都指向上述解決方案。
你可以嘗試使用谷歌的Protocol Buffers,它允許你創建一個被編譯到C++對象的數據對象。然後,您可以使用下面的項目之一,從他們的wiki使用protobuffers使用javascript:
你的軟件聽起來很像一個web應用程序,沒有互聯網中間。在這種情況下,NodeJS可能會成爲很好的中間件,您可以在C++中使用write modules,並在javascript中使用它們。我自己還沒有這樣做過。一個short example :)
現在幾年層我們有Electron project,這基本上是上面,但與基於Chrome網絡視圖。
請看看這個,我是主人
http://code.google.com/p/libjspp/
libjspp可以輕鬆接口&的C++與JavaScript的SpiderMonkey 1.8.5互動? 非侵入性C++ & javascript世界在同一時間。 對於想要嵌入的應用程序很有用&以面向對象的方式擴展Javascript。通過使用C++模板,非常細的界面實際上沒有開銷。
我
HTTP RPC接口?給出一個從C++調用JS函數的例子。 – Aesthete 2013-02-20 06:03:32
我不明白。如果實際後端以C++編碼,爲什麼不編譯它並從服務器上的某個中間件端點調用它?中間件可以是任何允許您執行編譯的二進制文件的語言嗎? – Vinay 2013-02-20 06:04:22
如果我正確理解你,你想要一個C++中間件? – Vinay 2013-02-20 06:05:47