參考某家銀行網路ATM的做法
1.「客戶端程式」弄個小HTTP Service,在固定網址 listen,例:localhost:54321
2.網頁程式發 request 至 localhost:54321,有兩種情形
可通:收到本機硬體資訊
不通:提示user下載所謂的「客戶端程式」
現在基本都是這個模式了。
而且server的ip記得要bind 127.0.0.1,不要bind 0.0.0.0。裝的人被弱掃的話會很頭痛。
froce客戶端程式監聽localhost:54321,不代表server的ip就是127.0.0.1了嗎? 還是哪邊需要做額外設定?
海綿寶寶http service如果客戶端那邊沒有啟動,有可能從網頁那邊讓客戶啟動嗎? 還是有什麼好方法可以解決?
客戶端程式監聽localhost:54321,不代表server的ip就是127.0.0.1了嗎? 還是哪邊需要做額外設定?
沒,只是提醒一下不要bind到0.0.0.0,不同語言的http server會有不同的預設值,我有遇過銀行插件bind 0.0.0.0,然後弱掃被掃到ssl證書過期的。
http service如果客戶端那邊沒有啟動,有可能從網頁那邊讓客戶啟動嗎? 還是有什麼好方法可以解決?
沒有,只能在你打包成安裝包的時候把他打包成系統service。
NSIS的話有插件,msi我不清楚。
你能做的頂多是提醒用戶安裝客戶端軟體,加檢查/提醒一下service有沒有開啟。
客戶端程式監聽localhost:54321,不代表server的ip就是127.0.0.1了嗎? 還是哪邊需要做額外設定?
對,froce大大只是強調/提醒你這點
http service如果客戶端那邊沒有啟動,有可能從網頁那邊讓客戶啟動嗎?
我是沒辦法
還是有什麼好方法可以解決?
可以去找我朋友 Ethan Hunt 應該就可以
只開放本機存取就比一般web service安全了。
網頁應無法直接讀取windows內的資訊,需寫另一個軟體請使用者安裝。
利用網頁呼叫您的安裝軟體進行檢查
基於本機安全性原則,網頁程式是無法直接使用或開啟客戶端的應用程式。
但還是可以用ACX或OBJ的方式來去啟動寫好的附屬應用程式,
或是寫成瀏覽器支援的外掛程式。
或是H5本身可呼叫的基本設備處理
但這還是有一道防線。需要客戶端同意啟動並授權使用。
你先往這方面去找資料吧。讀卡機的讀取是沒困難,網路上有很多範例可以應用。
但要達到完全自動化還是不可能。還是得經過一些手動程序。