yucekj-cube-report-verify
v1.3.4
Published
```javascript import { EmbedVerify } from 'yuce-embed-sdk';
Downloads
2
Readme
import { EmbedVerify } from 'yuce-embed-sdk';
const instance = new EmbedVerify();
/**
* 生成代码
* @param url 仪表盘访问的绝对路径(不包含域名)
* @param filters 过滤器配置
* @returns
*/
const code = instance.generateCode('/', [
{
filterId: 'aa',
filterValue: 'undefined',
},
{
filterId: 'aa2',
filterValue: 'undefined',
},
]);
/**
* 监听页面url变化,调用此方法验证页面参数的合法性,返回的是一个结构体
* @param whiteHosts host白名单,这个白名单要保存在仪表盘的配置中,这里由业务取出该配置,并传入
* @returns interface IGenerateQuery {
filters: IFilterItem[];
version: string;
// 当前的时间戳
timestamp: number;
}
*/
try {
const result = yuceCubeEmbed.verify(['127.0.0.1:8080']);
} catch (e) {
// 如果验证不通过,此方法会直接 throw error,并附上原因
// 最好不要将错误打印出来,直接吞掉
}
可能会抛出的 error:
throw new Error('当前页面不在iframe中,验证失败');
throw new Error('无法获取嵌入的域名,验证失败');
throw new Error('嵌入的域名不在白名单中,验证失败');
throw new Error('无法获取嵌入的参数,验证失败');
throw new Error('解密失败,验证失败');
throw new Error('缺少必要参数,验证失败');
throw new Error('版本号不一致,验证失败');
throw new Error('链接已失效,验证失败');