NDEFMessage: records 属性

可用性有限

此特性不是基线特性,因为它在一些最广泛使用的浏览器中不起作用。

安全上下文: 此功能仅在安全上下文(HTTPS)中可用,且支持此功能的浏览器数量有限。

实验性: 这是一项实验性技术
在生产中使用此技术之前,请仔细检查浏览器兼容性表格

NDEFMessage 接口的 records 属性表示 NDEF 消息中存在的 NDEFRecords 列表。

一个 NDEFRecord 对象列表,表示消息中记录的数据。

示例

以下示例演示了如何读取 NDEF 消息的内容。它首先为 onreading 设置一个事件处理程序,该处理程序会接收一个 NDEFReadingEvent 实例。NDEFMessage 对象从 NDEFReadingEvent.message 返回。它遍历 message.records 并根据消息类型处理每个记录。data 成员是一个 DataView,它允许处理使用 UTF-16 编码的数据。

js
ndefReaderInst.onreading = (event) => {
  const ndefMessage = event.message;
  for (const record of ndefMessage.records) {
    console.log(`Record type:  ${record.recordType}`);
    console.log(`MIME type:    ${record.mediaType}`);
    console.log(`Record id:    ${record.id}`);
    switch (record.recordType) {
      case "text":
        // TODO: Read text record with record data, lang, and encoding.
        break;
      case "url":
        // TODO: Read URL record with record data.
        break;
      default:
      // TODO: Handle other records with record data.
    }
  }
};

规范

规范
Web NFC
# dom-ndefmessage-records

浏览器兼容性