| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899 |
- import axios from "axios";
- import HMAC_SHA256 from "crypto-js/hmac-sha256";
- // const BASE_URL="https://devmini.tongifts.app/"
- const BASE_URL="https://open.tongifts.app";
- //测试
- // "_id" : "H6kcGjSbEYou87VglvJba",
- // "apiKey" : "VG5JSNeJFrZVuwlCaUhp3",
- // ”taskid“: "66aa09c8962bc7cb275f8619",
- // "giftUrl": "https://t.me/redevelope_bot/TGTest?startapp=o_CJ6CgJ80vcGzyfN0SrOXH"
- //正式
- // {
- // "name": "24680.com",
- // "email": "dongxie.cn@gmail.com",
- // "active": true,
- // "_id": "YdolcOCszE8KhE1caHjvP",
- // "apiKey": "qCYfOgsl6QD2Nlv4kdYa7",
- // "createdAt": "2024-11-28T06:36:17.793Z",
- // "__v": 0
- // }
- const config={
- _id:"YdolcOCszE8KhE1caHjvP",
- apiKey:"qCYfOgsl6QD2Nlv4kdYa7"
- }
- const service = axios.create({
- baseURL: BASE_URL,
- // withCredentials: true,
- timeout: 10000, // Request timeout
- });
- const init=(_id,apiKey)=>{
- if (_id!=null)config._id=_id;
- if (apiKey!=null)config.apiKey=apiKey;
- }
- const signHash=(params)=>{
- let keys = Object.keys(params)
- let signData = []
- keys.forEach(key => {
- if (key === 'k' || key === 's') return
- if (typeof params[key] === 'object')
- signData.push(`${key}=${JSON.stringify(params[key])}`)
- else
- signData.push(`${key}=${params[key]}`)
- })
- let rawStr = signData.sort().join('&')
- let selfHash = HMAC_SHA256(rawStr, config.apiKey)
- return selfHash.toString();
- }
- const tonHttpReq=(url,params={})=>{
- if (config._id===""||config.apiKey==="")return null;
- if (params==null)params={};
- let timestamp=Math.floor(Date.now()/1000);
- params={...params,k:config._id,t:timestamp};
- let data={
- ...params,
- s:signHash(params)
- }
- return service({
- method: 'post',
- url,
- data
- });
- }
- const updateTask=(userId,taskId,status="completed")=>{
- let params={
- userIds:[userId],
- taskId:taskId,
- status:status,
- }
- return tonHttpReq("api/open/updateTask",params);
- }
- // {
- // "name": "24680.com",
- // "email": "dongxie.cn@gmail.com",
- // "active": true,
- // "_id": "YdolcOCszE8KhE1caHjvP",
- // "apiKey": "qCYfOgsl6QD2Nlv4kdYa7",
- // "createdAt": "2024-11-28T06:36:17.793Z",
- // "__v": 0
- // }
- const register=(name,email)=>{
- let data={
- name,
- email
- }
- let url="api/merchants/register";
- return service({
- method: 'post',
- url,
- data
- });
- }
- const TonHelper={
- init,
- updateTask,
- register
- }
- export default TonHelper;
|