我想使用javascript / Android下的NFC阅读器读取RFID标签的UID。
UID由制造商设置,因此您无法复制RFID卡。
我使用navigator.nfc
来读取NFC信息,但是当我轻按RFID卡时,生成的名为message的对象具有一个名为records的数组,其中只有一个成员:message.records[0]
在message.records[0]
内有3个字段:data = null
,mediaType = empty string
,recordType = "empty"
。
UID在哪里?
当我使用TagInfo应用程序时,会获得有关RFID卡的所有信息,包括协议信息中的UID。因此,NFC读取器可以获取它们。为什么不navigator.nfc
?
function readWriteNfc() {
if ('nfc' in navigator) {
navigator.nfc.watch(function (message) {
consoleLog("NFC message received from URL " + message);
//now message.records[0].data is null...
}, {mode: 'any'})
.then(() => consoleLog("Added a watch."))
.catch(err => consoleLog("Adding watch failed: " + err.name));
} else {
consoleLog('NFC API not supported.');
}
}
答案 0 :(得分:0)
基于您使用navigator.nfc.watch()
的事实,我假设您尝试使用Web NFC API或更确切地说是其previous versions之一。
Web NFC API仅限NFC论坛标签上的NDEF消息。您无法访问NDEF抽象层以下的任何协议参数。因此,当前无法使用该API读取标签的UID。