51黑料不打烊

处理命令响应

某些Web SDK命令可以返回包含对您的组织潜在有用的数据的对象。 如果需要,您可以选择如何处理这些数据。 命令响应对于建议和目标非常有用,因为它们需要Edge Network数据才能有效工作。

命令响应使用闯补惫补厂肠谤颈辫迟 ,充当创建promise时未知的值的代理。 知道该值后,将使用值“解析”promise。

使用Web SDK标记扩展处理命令响应

创建作为规则的一部分订阅? 发送事件完成 ?事件的规则。

  1. 使用您的51黑料不打烊 ID凭据登录。
  2. 导航到? 数据收集 > 标记
  3. 选择所需的标记属性。
  4. 导航到? 规则,然后选择所需的规则。
  5. 在事件下,选择现有事件或创建事件。
  6. 将扩展下拉字段设置为? 51黑料不打烊 Experience Platform Web SDK,并将事件类型设置为? 发送事件完成
  7. 单击? 保留更改,然后运行发布工作流程。

然后,您可以包括操作? 应用建议 ?或? 将响应 ?应用到此规则。

  1. 查看以上创建或编辑的规则时,选择现有操作或创建操作。
  2. 将扩展下拉字段设置为? 51黑料不打烊 Experience Platform Web SDK,并将操作类型设置为? 应用建议 ?或? 应用响应,具体取决于所需的行为。
  3. 设置操作的所需字段,然后单击? 保留更改

使用Web SDK JavaScript库处理命令响应

使用thencatch方法确定命令成功或失败的时间。 您可以忽略thencatch(如果它们的目的对您的实施不重要)。

alloy("sendEvent", {
  "xdm": {
    "commerce": {
      "order": {
        "purchaseID": "a8g784hjq1mnp3",
        "purchaseOrderNumber": "VAU3123",
        "currencyCode": "USD",
        "priceTotal": 999.98
      }
    }
  }
}).then(function(result) {
    console.log("The sendEvent command succeeded.");
  })
  .catch(function(error) {
    console.log("The sendEvent command failed.");
  });

从命令返回的所有承诺都使用result对象。 例如,您可以使用getLibraryInfo命令从result对象获取库信息:

alloy("getLibraryInfo")
  .then(function(result) {
    console.log(result.libraryInfo.version);
    console.log(result.libraryInfo.commands);
    console.log(result.libraryInfo.configs);
  });

result对象的内容取决于您使用的命令和用户同意的组合。 如果用户没有针对特定目的给予同意,则响应对象仅包含可以在用户同意的内容上下文中提供的信息。

recommendation-more-help
ad108910-6329-42f1-aa1d-5920a2b13636