<fieldset id="drb0p"><optgroup id="drb0p"><mark id="drb0p"></mark></optgroup></fieldset>
<fieldset id="drb0p"></fieldset>
<center id="drb0p"></center>
<samp id="drb0p"></samp>
  • 国内精品久久久久久中文字幕_人妻少妇精品无码专区二区_蜜臀AV人妻久久无码精品麻豆_99精品国产一区二区三区_国内精品久久久久久TV

    諾塔斯L9-E-POE智能卡讀寫器全兼容瀏覽器支持HTTPS協(xié)議

    2020-04-28 13:31:00
    諾塔斯智能科技
    原創(chuàng)
    3444

         自從諾塔斯智能科技發(fā)布L6-E智能卡讀寫器以來,我們在用戶反饋的功能需求中,了解到客戶在web瀏覽器上對智能卡讀寫器進行二次開發(fā)需要支持https協(xié)議,首先我們來回顧一下L6-E智能卡讀寫器功能,它是一款支持TCP/IP通信可以通過USB接口進行自定義IP地址,內(nèi)置了websocket組件的智能卡讀寫器。隨著越來越多的web應(yīng)用比較重視安全性,大多數(shù)web應(yīng)用已經(jīng)升級到https協(xié)議了。因此,我們需要將內(nèi)置的websocket組件功能進行升級,從而更好的配合客戶在web瀏覽器應(yīng)用。

         首先,我們了解一下,什么是WebSocket協(xié)議,是html5的一種通信協(xié)議,該協(xié)議兼容我們常用的瀏覽器。例如Chrome、 Firefox、IE等。它可以使客戶端和服務(wù)端雙向數(shù)據(jù)傳輸更加簡單快捷,并且在TCP連接進行一次握手后,就可以持久性連接,同時允許服務(wù)端對客戶端推送數(shù)據(jù)。外加傳統(tǒng)模式的協(xié)議一般HTTP請求可能會包含較長的頭部,但真正有效的可能只有小部分,從而就占用了很多資源和帶寬。因此WebSocket協(xié)議不僅可以實時通訊,支持擴展;也可以壓縮節(jié)省服務(wù)器資源和帶寬。 WS協(xié)議和WSS協(xié)議兩個均是WebSocket協(xié)議的SCHEM,兩者一個是非安全的,一個是安全的。也是統(tǒng)一的資源標志符。就好比HTTP協(xié)議和HTTPS協(xié)議的差別。非安全的沒有證書,安全的需要SSL證書。(SSL是Netscape所研發(fā),用來保障網(wǎng)絡(luò)中數(shù)據(jù)傳輸?shù)陌踩?,主要是運用數(shù)據(jù)加密的技術(shù),能夠避免數(shù)據(jù)在傳輸過程被不被竊取或者監(jiān)聽。)其中WSS表示在TLS之上的WebSocket。WS一般默認是80端口,而WSS默認是443端口,大多數(shù)網(wǎng)站用的就是80和433端口。WS和WSS的體現(xiàn)形式分別是TCP+WS AS WS ,TCP+TLS+WS AS WS。服務(wù)器網(wǎng)址就是 URL。最后再說下WebSocket協(xié)議的特點:建立在 TCP 協(xié)議之上,服務(wù)端實現(xiàn)容易;與 HTTP 協(xié)議有良好的兼容性,握手時不容易被屏蔽,可以通過各種 HTTP 代理服務(wù)器;數(shù)據(jù)輕量,實時通訊;可以發(fā)送文本和二進制數(shù)據(jù)。不限制同源,客戶端可以與任意服務(wù)器端進行通訊。因此WebSocket協(xié)議的出現(xiàn),為很多人解決了關(guān)于擴展以及兼容性協(xié)議的煩惱問題。

        說一千道一萬,目的就是解決瀏覽器兼容問題。于是,諾塔斯L9-E-POE智能卡讀寫器一款瀏覽器全兼容智能卡讀寫器誕生了。它滿足了智能卡讀寫器二次開發(fā)支持https協(xié)議 客戶的需求,采用標準POE交換機供電,無需其它外部供電設(shè)備,從而有效的解決了既要部署網(wǎng)絡(luò)傳輸線纜,又要額外增加電源適配器的麻煩。設(shè)備可以自定義IP地址,區(qū)別于傳統(tǒng)智能卡讀寫器通過USB、RS232等接口通信,不會受到上位機硬件接口數(shù)量限制,用戶可以根據(jù)自己需求靈活的進行網(wǎng)絡(luò)擴展。

    諾塔斯L9-E-POE智能卡讀寫器配置如下:

    電氣特征

    外殼尺寸

    105 mm (長) x 70 mm (寬) x 12.8 mm (高)

    產(chǎn)品重量

    80.0 g

    硬件接口

    RJ45標準網(wǎng)絡(luò)接口

    通訊協(xié)議

    TCP/IP、UDP

    讀卡距離

    50mm—70mm(視標簽類型和尺寸而定)

    工作電壓

    額定電壓 5V USB供電 、可定制內(nèi)置鋰電池或POE供電

    工作電流

    200 mA (工作); 50 mA (待機); 100 mA (常規(guī))

    工作溫度

    0-50°C

    工作頻率

    13.56 MHz

    防沖突機制

    內(nèi)建防沖突特性(任何時候都只能訪問1張標簽)

    人機互動

    雙色LED指示燈、蜂鳴器

    與智能卡通信協(xié)議

    ü  ISO 14443-4 A和B類 非接觸式智能卡符合 PBOC2.0

    ü  Mifare 系列

    ü  NFC (ISO/IEC 18092)標簽

    操作系統(tǒng)

     Win98, Win ME, Win NT 4.0, Win 2000, Win 2003, Win 2003 R2, Win XP, Win Vista, Win 2008, Win 7, Win 8 ,Win10等

     Win 2003 x64, Win 2003 R2 x64, Win XP x64, Win Vista x64, Win 2008 x64, Win 2008 R2 x64, Win 7 x64, Win 8 x 64, Win 2012 x64

     Win CE 5.0 and 6.0

     Linux?

     Android? 3.1 及以上版本

     STM32、ARM等單片機系統(tǒng)等

    開發(fā)語言

    ü  VB、VB6、 PB9、doNet

    ü  VC、C++、C#

    ü  Dephi、JAVA 、JavaScript、QT

    ü  Android開發(fā)語言、Linux開發(fā)語言等

    支持瀏覽器

    谷歌Chrome瀏覽器、IE瀏覽器、360瀏覽器、QQ瀏覽器、搜狗瀏覽器、火狐瀏覽器、遨游瀏覽器、Opera瀏覽器、Safari瀏覽器等,此處不一一列舉。

    典型應(yīng)用

    電子錢包

    會員支付

    積分系統(tǒng)

    身份驗證

    智能海報

    自動售貨機

    智慧醫(yī)療

    充電樁計費

    智能收費

    諾塔斯L9-E-POE智能卡讀寫器產(chǎn)品詳圖

    諾塔斯L9-E-POE智能卡讀寫器

    諾塔斯L9-E-POE智能卡讀寫器內(nèi)部圖

    諾塔斯L9-E-POE智能卡讀寫器瀏覽器開發(fā)部分范例代碼

    function ConnectServer(){
    			var protocolStr = document.location.protocol;
    			document.getElementById('log').innerHTML = '<li><b>'+ protocolStr +'</b></li>' + document.getElementById('log').innerHTML;
    			try {
    				nCommandIndex = 0;
    				strIp = document.getElementById('strLotusCardDeviceIp').value;
    				strPort = document.getElementById('strLotusCardDevicePort').value;
    				if(protocolStr == "https:")
    				{
    					wsUrl = 'wss://'+ strIp +':'+  strPort;
    				}
    				else
    				{
    					wsUrl = 'ws://'+ strIp +':'+  strPort;
    				}
    				socket = new WebSocket(wsUrl); 
          } catch (evt) {
             document.getElementById('log').innerHTML = '<li><b>'+getNowFormatDate()+'#new WebSocket error:'+ evt.data+'</b></li>' + document.getElementById('log').innerHTML;
             socket = null;
             if (typeof(connCb) != "undefined" && connCb != null)
                 connCb("-1", "connect error!");
             return;
          }			
    			socket.onopen = function ()
    				{  
    					document.getElementById('log').innerHTML = '<li><b>'+getNowFormatDate()+'#連接服務(wù)器成功</b></li>' + document.getElementById('log').innerHTML;
    					document.getElementById('status').innerHTML = 'Socket Open';
    					document.getElementById('status').className = 'online';
    				};
    			socket.onclose =  function(event)
    				{  
    					document.getElementById('log').innerHTML = '<li><b>'+getNowFormatDate()+'#斷開連接:' + event.wasClean + '</b></li>' + document.getElementById('log').innerHTML;
    					document.getElementById('status').innerHTML = 'Socket Closed';
    					document.getElementById('status').className = 'offline';
    				};
    <table width="100%">
    	<tr style="width:100px; height:40px;">
    		<td>
    			讀卡器IP:
    		</td>		
    		<td>
    			<input type="text" value="wss.lotussmart.cc" id="strLotusCardDeviceIp" style="width:150px; height:30px;" />
    		</td>
    	</tr>
    	<tr style="width:100px; height:40px;">
    		<td>
    			讀卡器PORT:
    		</td>		
    		<td>
    			<input type="text" value="31213" id="strLotusCardDevicePort" style="width:150px; height:30px;" />
    		</td>
    	</tr>
    	
    	<tr style="width:100px; height:40px;">
    		<td>
    			狀態(tài)
    		</td>
    		<td>
    			<p id="status"></p>
    		</td>
    	</tr>
    	<tr style="width:100px; height:40px;">
    		<td colspan="2">
    			<h3>通信函數(shù):1、連接服務(wù)器 2、執(zhí)行字符串函數(shù)并解析結(jié)果 3、斷開連接</h3>
    		</td>
    	</tr>
    	<tr style="width:100px; height:40px;">
    		<td>
    			連接服務(wù)器:
    		</td>
    		<td>
    			<INPUT id = "ConnectServer"  type=button value="ConnectServer" onclick="javascript:ConnectServer();" style="width:150px; height:30px;"/>			
    		</td>
    		
    	</tr>
    	<tr style="width:100px; height:40px;">
    		<td>
    			關(guān)閉連接:
    		</td>		
    		<td>
    			<INPUT id = "CloseConnection"  type=button value="CloseConnection" onclick="javascript:socket.close();" style="width:150px; height:30px;"/>
    		</td>
    	</tr>
    	<tr style="width:100px; height:40px;">
    		<td>
    			獲取連接狀態(tài):
    		</td>
    		<td>
    			<INPUT id = "ConnectionStatus"  type=button value="ConnectionStatus" onclick="javascript:document.getElementById('log').innerHTML = '<li><b>#status:' + GetSocketStatus() + '</b></li>' + document.getElementById('log').innerHTML;"
    			 style="width:150px; height:30px;"/>
    		</td>
    	</tr>
    	<tr style="width:100px; height:40px;">
    		<td>
    			獲取MCU序列號:
    		</td>		
    		<td>
    			<INPUT id = "OpenDevice"  type=button value="GetMcuSerailNo" onclick="javascript:ExecStringCommand('GetMcuSerailNo')" style="width:150px; height:30px;"/>
    		</td>
    	</tr>
    	
    	<tr style="width:100px; height:40px;">
    		<td>
    			蜂鳴:
    		</td>		
    		<td>
    			<INPUT id = "Beep"  type=button value="Beep" onclick="javascript:ExecStringCommand('Beep,10');" style="width:150px; height:30px;"/>
    		</td>
    	</tr>
    	<tr style="width:100px; height:40px;">
    		<td>
    			獲取M1卡號:
    		</td>		
    		<td>
    			<INPUT id = "GetCardNo"  type=button value="GetCardNo" onclick="javascript:ExecStringCommand('GetCardNo,38');" style="width:150px; height:30px;"/>
    		</td>
    	</tr>
    	<tr style="width:100px; height:40px;">
    		<td>
    			裝載密碼:
    		</td>		
    		<td>
    			<INPUT id = "LoadKey"  type=button value="LoadKey" onclick="javascript:ExecStringCommand('LoadKey,96,0,FFFFFFFFFFFF');" style="width:150px; height:30px;"/>
    		</td>
    	</tr>
    	<tr style="width:100px; height:40px;">
    		<td>
    			驗證密碼:
    		</td>		
    		<td>
    			<INPUT id = "Authentication"  type=button value="Authentication" onclick="javascript:ExecStringCommand('Authentication,96,0');" style="width:150px; height:30px;"/>
    		</td>
    	</tr>
    	<tr style="width:100px; height:40px;">
    		<td>
    			讀數(shù)據(jù)扇區(qū)0塊1:
    		</td>		
    		<td>
    			<INPUT id = "M1Read"  type=button value="M1Read" onclick="javascript:ExecStringCommand('Read,1');" style="width:150px; height:30px;"/>
    		</td>
    	</tr>
    	<tr style="width:100px; height:40px;">
    		<td>
    			寫數(shù)據(jù)扇區(qū)0塊1:
    		</td>		
    		<td>
    			<INPUT id = "M1Write"  type=button value="M1Write" onclick="javascript:ExecStringCommand('Write,1,0123456789abcdef0123456789abcdef');" style="width:150px; height:30px;"/>
    		</td>
    	</tr>	
    	<tr style="width:100px; height:40px;">
    		<td>
    			讀數(shù)據(jù)扇區(qū)0塊1:
    		</td>		
    		<td>
    			<INPUT id = "NtagRead"  type=button value="NTAGRead" onclick="javascript:ExecStringCommand('Read,4');" style="width:150px; height:30px;"/>
    		</td>
    	</tr>
    	<tr style="width:100px; height:40px;">
    		<td>
    			寫數(shù)據(jù)NTAG4PAGE:
    		</td>		
    		<td>
    			<INPUT id = "NtagWrite"  type=button value="NtagWrite" onclick="javascript:ExecStringCommand('NtagWrite,4,012345678');" style="width:150px; height:30px;"/>
    		</td>
    	</tr>	
    	<tr style="width:100px; height:40px;">
    		<td>
    			中止M1卡片:
    		</td>		
    		<td>
    			<INPUT id = "M1Halt"  type=button value="M1Halt" onclick="javascript:ExecStringCommand('Halt');" style="width:150px; height:30px;"/>
    		</td>
    	</tr>		
    	<tr style="width:100px; height:40px;">
    		<td>
    			清除日志:
    		</td>		
    		<td>
    			<INPUT id = "ClearLog"  type=button value="ClearLog" onclick="javascript:document.getElementById('log').innerHTML = '';" style="width:150px; height:30px;"/>
    		</td>
    	</tr>		
    	<tr>
    		<td colspan="2">
    			<h3>日志</h3>
    		</td>
    	</tr>
    	<tr>
    		<td colspan="2">
    			<ul id="log" style="overflow: auto; list-style: none; padding:0; background:#ffffff; font-size:small; border-style:solid; border-color:#c0c0c0"></ul>
    		</td>
    	</tr>  </table>
    產(chǎn)品完整測試頁面請點擊這里,諾塔斯智能科技網(wǎng)絡(luò)版智能卡讀寫器LotusCard WEB Socket 演示頁面    



    發(fā)表評論
    評論通過審核后顯示。
    熱門文章推薦
    關(guān)于PSAM卡、SAM卡、SIM卡的特征和區(qū)別 2019-03-22 由于人們對PSAM卡、SAM卡、SIM卡的概念理解不到位加之很少仔細的對PSAM卡、SAM卡、SIM卡實物進行區(qū)別,容易將PSAM卡、SAM卡、SIM卡混為一談。諾塔斯智能科技就PSAM卡、SAM卡、SIM卡三者特征和作用進行介紹,幫助大家對PSAM卡、SAM卡、SIM卡進行深刻的認識和區(qū)分。
    M1卡常見問題和處理方法 2019-02-21 M1卡是恩智浦出品的芯片縮寫,全稱為NXP Mifare1系列,常用的有S50及S70兩種型號,截止到2013年11月4日,已經(jīng)有國產(chǎn)芯片與其兼容,利用PVC封裝M1芯片、感應(yīng)天線,然后壓制成型后而制作的卡即是智能卡行業(yè)所說的M1卡。M1卡的優(yōu)點是可讀可寫的多功能卡,缺點是:價格稍貴,感應(yīng)距離短,目前適合非定額消費系統(tǒng)、停車場系統(tǒng)、門禁考勤系統(tǒng)等,目前應(yīng)用最廣泛的非接觸式IC卡。
    NFC數(shù)據(jù)交換格式(NDEF)規(guī)范 2019-05-28 為實現(xiàn)標簽和NFC設(shè)備,及NFC設(shè)備之間的交互通信,NFC論壇定義了稱為NFC數(shù)據(jù)交換格式(NDEF)的通用數(shù)據(jù)格式。 NDEF是輕量級的緊湊的二進制格式,可帶有URL,vCard和NFC定義的各種數(shù)據(jù)類型。
    非接觸式IC卡(M1卡)區(qū)塊讀寫控制 2019-02-21 非接觸式IC卡系列中的Mifare One (M1卡)的優(yōu)點是可讀可寫的多功能卡,缺點是:價格稍貴,感應(yīng)距離短,目前適合非定額消費系統(tǒng)、停車場系統(tǒng)、門禁考勤系統(tǒng)等,目前應(yīng)用最廣泛的 非接觸式IC卡。諾塔斯智能科技專業(yè)從事非接觸式IC卡讀寫器的研發(fā)與銷售,為各行業(yè)用戶提供專業(yè)的IC卡系統(tǒng)解決方案。
    聯(lián)系我們
    聯(lián)系人: 張經(jīng)理
    電話: 400-023-6659
    傳真: 023-68798110
    Email: 843718693@qq.com
    QQ: 843718693
    微信: Lotus-Smart
    微博: lotusreader
    旺旺: 諾塔斯智能科技有限公司
    地址: 重慶市江北區(qū)宏帆路36號宏帆天地1棟6樓
    • 諾塔斯智能科技在線客服
      在線客服
    • 重慶諾塔斯智能科技有限公司微信公眾號
      關(guān)注微信
    • 諾塔斯智能科技網(wǎng)上商城
      網(wǎng)上商城
    移動訪問
    日本添下边视频全过程_人妻少妇精品无码专区二区_蜜臀AV人妻久久无码精品麻豆_99精品国产一区二区三区
    <fieldset id="drb0p"><optgroup id="drb0p"><mark id="drb0p"></mark></optgroup></fieldset>
    <fieldset id="drb0p"></fieldset>
    <center id="drb0p"></center>
    <samp id="drb0p"></samp>
  • 南漳县| 林口县| 武定县| 广水市| 奉节县| 海阳市| 和政县| 武陟县| 汽车| 柏乡县| 辽中县| 红安县| 綦江县| 武定县| 达州市| 尼玛县| 扶风县| 蒲城县| 竹山县| 富川| 泸溪县| 德州市| 新绛县| 保康县| 孝昌县| 屏南县| 调兵山市| 陈巴尔虎旗| 闽侯县| 防城港市| 乌拉特前旗| 安国市| 武鸣县| 大竹县| 娱乐| 武川县| 长葛市| 德化县| 汕头市| 慈利县| 南漳县|