文档中心 > 店铺动态卡片-开发指引

schema.json

更新时间:2023/03/06 访问次数:7449

一级目录如下:

{
  "cloudSchema": "...", //服务端配置,如果不需要服务端请勿配置
  "authorizeSchema": "...", // 鉴权配置
  "jsonSchema": "...", // 表单配置(配置表单基于jsonSchema做数据校验和UI渲染,配置应用基于jsonSchema做数据校验)
}


一、cloudSchema


云应用配置:

{
  // 云应用类型
  "cloudSchema": {
    // 云应用
    "cloudType": "cloudApp",
    // 环境: test/online
    "env": "test", 
    // 提交数据的接口
    "submit": {
      // 云应用ID
      "cloudAppId": 345
      "path": "/submit",
      /** 平台传入参数如下:
    appId:小部件id
        appVersion:小部件版本
        authToken:授权的token(需要授权时)
        formData:配置表单数据
       orderId:投放计划Id,表示商家针对应用,在某个场景产生的一次投放;
       dataId:投放单数据id
        widgetViewId:商家针对小部件,配置相关数据以后,产生的小部件视图卡片Id,比如旺铺内的某一个模块实例;
        sellerId:卖家id(isv侧的数据保存接口可根据sellerId+orderId来区分不同卖家以及相同卖家的不同坑位)
      **/
      }
      // 初始化的接口
    "initial": {
      // 云应用ID
      "cloudAppId": 345,
      "path": "/initial"
      /** 平台传入参数如下:
    appId:小部件模板id
        appVersion:小部件版本
        sellerId:卖家id
        instanceWidgetId:实例化小部件id(首次触发时值为空,后续版本更新触发时,返回实例化小部件id)
      **/
    }
  }
}


云函数配置:

{
  // 云函数类型
  "cloudSchema": {
    // 函数
    "cloudType": "serverless",
    // 环境: test/online
    "env": "online", 
    // 提交数据的接口
    "submit": {
      // 云应用ID
      "handler":"main",
      "functionName":"functionName"
      /** 平台传入参数如下:
    appId:小部件id
        appVersion:小部件版本
        authToken:授权的token(需要授权时)
        formData:配置表单数据
       orderId:投放计划Id,表示商家针对应用,在某个场景产生的一次投放;
       dataId:投放单数据id
        widgetViewId:商家针对小部件,配置相关数据以后,产生的小部件视图卡片Id,比如旺铺内的某一个模块实例;
        sellerId:卖家id(isv侧的数据保存接口可根据sellerId+orderId来区分不同卖家以及相同卖家的不同坑位)
      **/
      }
      // 小部件模版需要配置,进行小部件实例化操作
    "initial": {
      // 云应用ID
      "handler":"main",
      "functionName":"functionName"
      /** 平台传入参数如下:
    appId:小部件模板id
        appVersion:小部件版本
        sellerId:卖家id
        instanceWidgetId:实例化小部件id(首次触发时值为空,后续版本更新触发时,返回实例化小部件id)
      **/
    }
  }
}


二、authorizeSchema


ISV 可能需要获取商家授权的信息,可以使用该配置来确定授权类型:

{
  // 鉴权能力
  "authorizeSchema": {
    "needAuthorize": true // 是否开启鉴权能力,如果开启鉴权能力且配置了服务端,提交表单的时候平台会将商家授权token带到配置的服务端接口
  }
}


三、jsonSchema


配置应用(推荐)和配置表单(废弃)对于jsonSchema的使用略有不同,区别如下:

1)配置应用:jsonSchema 仅定义数据结构,UI与交互通过java script代码来实现;

2)配置表单:jsonSchema 即定义数据结构也定义UI、交互、校验等实现;


{
  "jsonSchema": {
    "type": "object",
    "properties": {
      "webapp": {
        "widget": "TaobaowpCustomForm",
        "type":"object",
        "properties": {
          "moduleEditTitle": {
            "type": "string"
          },
          "pageIds": {
            "type": "array",
            "properties": {
              "id": {
                "type": "stirng"
              }
            }
          },
          "coupon": {
            "type": "number"
          },
          /****小程序二跳的配置****/
          "miniappSelect": {
              "customeWidget": "TaobaowpOutside_miniapp_select"
          },
          "shopItem": {
            "type": "string"
          },
        }
      }
    }
  }
}


FAQ

关于此文档暂时还没有FAQ
返回
顶部