You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在iOS快捷指令中实现NFC触发带标签ID的POST请求至Node-RED服务器?

实现iPhone扫描NFC触发向Node-RED发送POST请求的方案

一、iPhone端:用「快捷指令」搭建自动化流程

  • 新建快捷指令
    打开「快捷指令」APP,点右上角「+」新建。依次添加以下动作:

    1. 「读取NFC」:开启「在“快捷指令中心”显示」,方便触发。
    2. 「获取NFC标签的ID」:自动提取标签唯一ID字符串。
    3. 「发送HTTP请求」:
      • 请求方法选「POST」,URL填你的Node-RED本地服务器地址(比如http://192.168.x.x:1880/nfc-trigger,替换成实际局域网IP和自定义路径)。
      • 请求体选「JSON」,输入格式:
        {
          "nfcId": "{{NFC标签的ID}}"
        }
        
        这里的{{NFC标签的ID}}直接从快捷指令的变量列表中选择插入即可。
        最后保存快捷指令,命名比如「NFC触发Node-RED」。
  • 设置自动触发(可选)
    打开iPhone「设置」-「快捷指令」-「自动化」,选「创建个人自动化」→「NFC」,扫描目标NFC标签完成关联。下一步添加刚才创建的快捷指令,关闭「运行前询问」,保存配置后,扫描标签就会自动执行流程。

二、Node-RED端:配置POST接收节点

  • 搭建处理流程

    1. 拖拽「HTTP输入」节点到画布:设置方法为「POST」,路径填和iPhone端一致的/nfc-trigger。
    2. 拖拽「函数」节点连接到HTTP输入节点,写入处理逻辑示例:
      // 提取NFC ID
      const nfcId = msg.payload.nfcId;
      // 根据ID执行对应操作
      switch(nfcId) {
        case "标签A的ID字符串":
          msg.payload = "执行设备开启操作";
          break;
        case "标签B的ID字符串":
          msg.payload = "执行记录日志操作";
          break;
        default:
          msg.payload = "未匹配到标签操作";
      }
      return msg;
      
    3. 拖拽「HTTP响应」节点连接到函数节点:设置状态码为「200 OK」,响应内容可自定义(比如{"status":"success"})。
    4. 可添加「调试」节点,方便查看接收到的NFC ID,验证流程是否正常。
  • 测试验证
    部署Node-RED流程,用iPhone扫描NFC标签,查看Node-RED调试面板是否收到正确ID,同时确认快捷指令执行状态为成功。

三、NFC标签准备注意事项

  • 无需提前给标签预编程URL,我们是通过快捷指令主动读取标签ID,而非依赖标签自带跳转。
  • 确保标签为可读写类型(普通NFC标签基本都支持),扫描时iPhone能正常识别标签。

四、常见问题排查

  • POST请求失败:检查iPhone和Node-RED服务器是否在同一局域网,IP地址、节点路径是否匹配,Node-RED的1880端口是否允许局域网访问。
  • NFC ID读取失败:检查标签是否损坏,或快捷指令中是否正确添加「获取NFC标签的ID」动作。

内容的提问来源于stack exchange,提问作者Jason O

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 14:53:09