2017-07-05 35 views
-2

我正在嘗試使用Go並作爲Web開發人員我想探索構建相同的Go Web服務具有與Linux,Android,iOS,macOS,Windows等相同的HTML/JavaScript/CSS UI跨平臺。我可以使用HTML/JavaScript UI作爲跨平臺應用程序(Linux,Android,iOS,macOS,Windows)運行Go Web服務器

我知道框架,如Electron,Cordova,gomobile,但它們都不能與Go和Web UI一起工作來生成幾個Linux二進制文件,Android APK,Windows exe文件,macOS dmg文件,iOS二進制文件還不知道這種格式),而不必爲不同的平臺編寫不同的用戶界面。

關於如何解決這個問題的任何建議?

+1

我不確定你在問什麼:你在尋找一個庫/工具來創建HTML/CSS用戶界面的原生應用程序嗎?如果是這樣,那就是SO的主題。你只是問是否可以用Go編寫一個跨平臺的Web服務器?如果是這樣,答案是肯定的。 – Adrian

+0

建設去代碼運行在我知道該怎麼做的各種平臺上。問題是關於將二進制和靜態web資源文件打包到運行go服務的二進制文件中的框架/方法,還包括將作爲應用UI顯示的「web視圖」。這肯定會成爲SO的一個問題。 – Tirithen

+1

不,尋找一個框架或包是[特別是不允許](https://stackoverflow.com/help/on-topic)。 – Adrian

回答

1

所有這些平臺都有瀏覽器來呈現網頁內容。像Cordova這樣的框架在瀏覽器組件周圍封裝了一個本地應用程序(Web視圖)。

缺少的部分是部署本地go服務器,這將是您的應用程序的後端。 AFAIK,目前還沒有跨平臺解決方案。另外,在本地使用服務器違反了它的主要目的(同時爲多個客戶端提供服務,遠程存儲信息的安全性)。

+0

因此,我要尋找的是一種將Go功能暴露給HTML和JavaScript而不涉及任何HTTP的方法,然後將這兩部分打包在一起。 科爾多瓦據我瞭解,它不會允許你整合反對一個單獨的二進制權利?也許我應該更多地閱讀這個框架。 – Tirithen

+1

您可以使用gomobile工具製作可供本機應用程序使用的SDK庫。但是這種方法不適用於桌面平臺。 –

+0

可能另一個可能是使用GopherJS將所有東西都轉換成JavaScript,但這會讓人覺得有點失敗並且運行速度會變慢。 也許現在沒有好的方法來與Go一起以跨平臺的方式來做到這一點(除了自己創建這種類型的庫)。 – Tirithen

相關問題