繁体   English   中英

Google Chrome DevTools控制台中代码生成的输入

[英]Code-generated input in Google Chrome DevTools Console

我正在尝试通过MagTek Web API使用MagTek读卡器读取卡数据。 用于此的代码

...
function doRequest(url, data, timeout, success, handleError) {
    var request = {
        url: HTTP_HOST + path,
        method: method,
        data: data,
        headers: {
            'Content-Type': 'application/json; charset=UTF-8',
            'Cache-Control': 'no-cache'
        },
        dataType: 'json',
        success: success,
        timeout: timeout,
        error: handleError
    };
    $.ajax(request);
}
...


function extractCardDataFromResponse(response) {
    var data = response.CardSwipeOutput;
    var names = data.CardName.split('/');
    return {
        cardNumber: data.Track2Masked.split('=')[0].substr(1),
        lastName: names[0],
        firstName: names[1],
        expirationMonth: data.CardExpDate.substr(-2),
        expirationYear: '20' + data.CardExpDate.substr(0, 2),
        track2: data.Track2,
        dukptksn: data.KSN
    };
}

function readCard(handlerCardData, onReady, onError) {
    try {
        ...
        onReady();
        ...
        doPost('/RequestCardSwipe', requestBody, 300000, function (response) {
            if (response.CardSwipeOutput.TrackDecodeStatus === '000000') {
                handlerCardData(extractCardDataFromResponse(response));
            }
        }, onError);
    } catch (e) {
        onError(e);
    }
}

我运行readCard((a)=>console.log(a), ()=>console.log('ready'), (e)=> {console.log('error');console.log(e);}) 刷卡后,数据将插入控制台。 为什么会发生这种事情?

在此处输入图片说明

可以将MagTek的读卡器设置为以下两种模式之一:HID模式或KB仿真模式。 在我的情况下,读卡器处于键盘仿真模式,并且卡数据已插入Chrome控制台。 当我将阅读器设置为HID模式时,它开始工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM