簡體   English   中英

Java Applet使用Chrome瀏覽器啟動客戶端程序有哪些替代方案?

[英]What is the alternatives for Java Applet to launch client programs using Chrome browsers?

我正在使用ASP.net和C#在Web應用程序中工作。

我的目標是檢查客戶端計算機上的桌面應用程序。如果它存在,那么我應該啟動它。 否則,如果它不存在,我們應該下載,安裝然后啟動它。

我可以使用Java Applet開發這個模塊但不幸的是,谷歌決定在2015年9月禁用NPAPI,因此applet將無法在Chrome上運行。

我的問題是關於幫助我實現上述場景的Applet替代方案?

一旦Google Chrome成為第一個宣布他們不再支持NPAPI的人,他們也是第一個提供新架構以便重寫代碼以在其瀏覽器上工作的人。 您可以查看Native Messaging,它“可以使用與其他消息傳遞API類似的API與本機應用程序交換消息”。 問題是這種方法只適用於Chrome,不能適應其他瀏覽器。

一個更有用的方法是FireBreath,一個后NPAPI世界中的瀏覽器插件。 檢查項目的一個伙伴下面的單詞:

“FireBreath 2將允許您編寫一個在NPAPI,ActiveX或Native Messaging中工作的插件; 它已接近准備進入測試階段。 它沒有任何真正的繪圖支持,但可以適用於您描述的內容。 安裝過程有點痛苦,但它確實有效。 本機消息傳遞組件使用的FireWyrm協議可以與允許傳遞文本數據的任何連接一起使用; 應該可以在firefox上使用js-ctypes,或者以某種方式使用WEB-RTC甚至CORS AJAX。 目前我們唯一需要解決的問題是Chrome,但我們采用的方式對其他技術來說非常便攜。“

據我所知,唯一(半)可行的選項是為Chrome用戶提供指向桌面應用程序的JNLP文件的鏈接。 然后當/如果JWS桌面應用程序啟動時,讓它報告回服務器'加載確定'然后'目標應用程序。 安裝/未安裝'。

在您的服務器上,有一個等待客戶端報告的時間。 如果它通過那個時間,假定客戶端機器根本不支持Java,並且用戶正在檢查某些Web服務以嘗試找出哪個應用程序。 打開JNLP!

在搜索了最合適的方法來實現我的目標之后,我認為使用自定義協議將是從網頁訪問我的客戶端應用程序的一個很好的解決方案。

許多公司使用此解決方案,例如Microsoft(使用mailto:打開Outlook應用程序)Apple(使用itms:打開iTunes應用程序)

以下鏈接是一個非常好的鏈接,談論自定義協議: https//support.shotgunsoftware.com/entries/86754-How-to-launch-external-applications-using-custom-protocols-rock-instead-of -http-

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM