Edge 扩展的操作类型

操作类型库模块旨在执行操作 – 任何操作。该操作具体做什么完全由您来决定。您想要发送信标,还是要转换事件中的某些数据?

重要

本文档介绍了 Edge 扩展的操作类型。如果您正在开发 Web 扩展,请另外参阅关于 Web 扩展的操作类型的指南。

另外,本文档假设您熟悉库模块以及库模块在 Platform Launch 扩展中的集成方式。如果您需要查看简介,请在返回本指南之前参阅关于库模块格式的概述。

例如,如果要将一些数据转发到第三方端点,您的模块可能会如下所示:

module.exports = (context) {
  const { arc, utils } = context;
  const { fetch } = utils;
  const { event: { xdm } } = arc;
  return fetch('http://someendpoint.com', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json'
    },
    body: JSON.stringify(xdm)
  })
};

现在,假定您希望可由 Adobe Experience Platform Launch 用户配置端点。您可以允许用户输入一个端点,然后将该端点保存到设置对象,该对象如下所示:

{
  "endpoint": "http://someendpoint.com"
}

要对用户定义的端点执行操作,您的模块需要更改为:

module.exports = (context) {
  const { arc, utils } = context;
  const { fetch } = utils;
  const { event: { xdm } } = arc;
  const  { endpoint } = settings;
  return fetch(endpoint, {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json'
    },
    body: JSON.stringify(xdm)
  })
};

操作结果

操作模块返回的结果可以是任何内容。如果该操作需要执行异步任务,您可以返回一个 promise,该 promise 在得到解析后会返回您所需的结果。

操作结果存储在 ruleStash 键中,所有模块均可通过 context 参数 (context.arc.ruleStash) 使用该键。您可以在此处了解关于 ruleStash 的更多信息。

On this page

Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now