2015-04-23 54 views
2

現在ChromeFireFox(FF到一個較小但仍然相關的程度)正在取消對NPAPI(基本上是Java)的支持和Edge (formerly Spartan不會有它,有什麼替代方案?NPAPI插件支持或類似的閱讀智能卡

我很欣賞沒有一種尺寸適合所有的替代品,至今我仍在努力尋找一些足夠的東西。它需要連接到通過USB連接的NFC讀卡器,並具有讀寫智能卡的能力。

我發現了各種選項,如Native Client,但這是Google Specific - 它需要跨瀏覽器。

回答

2

FireBreath 2將支持這一點,因爲你不需要繪圖支持。如果你願意把你的手弄髒,你可以用它來滿足你的需要,但你需要願意幫助追蹤和修復錯誤等。

它目前在FireBreath's github repo的「重構」分支中,但我預計最終會改變。

+0

考慮到這個使用NPAPI框架,這肯定也會受到影響嗎? –

+0

FireBreath 2將其所有API改爲異步。它現在有3種瀏覽器訪問方法,而不是2種:ActiveX,NPAPI和FireWyrm。 FireWyrm是專門爲FireBreath 2開發的一種新的RPC機制,可以通過本地消息進行訪問。在寫這篇文章的時候,還有很多工作要做,但它正在接近。 – taxilian

0

您可以使用任何語言編寫本地REST服務,這些語言將監聽http://localhost:[some_custom_port]與NFC閱讀器進行通信。

然後你只需要編寫JavaScript來與REST服務進行通信。這應該從任何瀏覽器工作。

此方法存在的一些問題: - 每臺帶有NFC讀卡器的PC都需要在能夠與NFC讀卡器通信之前安裝該服務。 - 某些沙盒瀏覽器(如Metro IE)無法訪問本地主機。

+0

如果Edge,Windows 10中的默認瀏覽器[無法訪問本地主機](http://dev.modern.ie/platform/faq/how-can-i-debug-localhost/),那麼這種方法有一些* *大**缺點。 – nemec

+0

如果您的webapp使用https,這項工作是否可行? – lmiguelmh

0

爲了提供安全連接並支持所有瀏覽器,有一個解決方案看起來像是瀏覽器與原生桌面應用程序之間的通信,通過自定義uri和本地應用程序通過web服務器瀏覽器,我試過了,本機應用程序將處理閱讀功能,實現似乎很複雜,但適用於安全通信source

+0

提防中間的男人:) – sotn

+0

我沒有得到你指向的中間人的清晰上下文,但我想象你正在要求一個攻擊,我使用基於令牌的驗證,我創建了一個新的存儲庫對於我的標準代碼庫,很快發佈代碼[鏈接](https://github.com/krishnakumarsekar/Secure-Smart-Card-Reader-Without-Applet):) :) –

+0

因此,您正在使用https服務器客戶端,我想你正在安裝https服務器證書作爲受信任的根CA.對?這會*會危及用戶的隱私。 – lmiguelmh