games/BladeStruggle/assets/script/Tracking/TrackingManager.ts

47 lines
1.1 KiB
TypeScript

import {genSaltSync, hashSync} from 'bcryptjs';
export enum TrackingType {
/** 进入游戏 */
Open = 'open',
/** 试用皮肤 */
TryOutSkin = 'try-out-skin',
/** 三倍积分 */
TriplePickup = 'triple-pickup',
/** 恢复 */
Recover= 'recover',
/** 免费试用 */
FreeTrial= 'free-trial',
}
const KEY = `sssssssssk`;
export class TrackingManager {
public static async send(type: TrackingType) {
const salt = genSaltSync(10);
const hash = hashSync(KEY, salt);
const formData = new FormData();
formData.append('listener', type);
const res = await fetch('https://api.ad.game.06zk.com/app/anchor', {
method: "POST",
headers: {
Key: hash,
Href: location.href
},
body: formData
});
const data = await res.json();
if (data.code === 200) {
console.log(`上报${type}成功`);
} else {
console.log(`上报${type}失败`);
}
}
}
if (!CC_EDITOR) {
TrackingManager.send(TrackingType.Open);
}