node 调用腾讯大数据接口

it2025-03-19  19

 

第一步

:进入网址 http://mta.qq.com/mta/base/ctr_err?app_id=1注册如下图点击注册一个应用

 

 

 

 

 

 

======第二步:如下图所示,点击新建应用

第三步:

应用注册如下图点击进入应用管理(http://mta.qq.com/h5/manage/ctr_app_manage?app_id=500582001)

 

 

 

第四步:在应用管理中我们可以看到APP ID以及SECRET KEY以及配置指南,这个复制粘贴到html的最后一个js后</body>之前

 

 

 

第五步  在网址(http://mta.qq.com/mta/overview/ctr_all_app_new?tab=2)这儿查看我们的应用并进行管理

 

第六步:将应用管理的统计代码放到前端html的最后js

 

第七步:写一个封装函数配置参数,注意引用模块,代码如下digdata_tx.js:

 

'use strict';const md5 = require('md5');const request = require('request');exports.bigdata = { readdata: function(path, params, callback) { const URL = 'http://mta.qq.com/'; const secret_key = '08cxxxxxxxxxxxxxxx1d5b3027058f'; params.app_id = 5xxxxxxxxxxxxxxxx01; let paramsArray = new Array(); for(let item in params) { paramsArray.push(`${item}=${params[item]}`); } paramsArray.sort(); let sign = md5(secret_key + paramsArray.join('')); params.sign = sign;

request.post({ url: URL + path, form: params }, function(error, response, body) { if(!error && response.statusCode == 200) { let res = JSON.parse(body); if(res.code !== 0) callback({msg:res.info + ' !tips: message from tencent'}, null); else callback(null, res.data); } else { callback(error, null); } }) }};

 

第八步引入上面的js以及相应模块以及写接口请求数据

const joi = require('joi');const internals = {};const security = require('../libs/security');const bigdata_tx = require('../libs/bigdata_tx');const mongoose = require('mongoose');const moment = require('moment');//const yar=require('yar');

{ method: ['post'], path: '/ctr_core_data', config: { tags: ['api'], description: '应用每天的pv uv vv iv数据', notes: '跳出率和在线时长是什么参数???', validate: { payload: joi.object({ start_date:joi.string().default(moment().subtract(7,'day').format('YYYY-MM-DD')).min(10).max(10).error(new Error('格式必须为(Y-m-d)')).description('开始时间(Y-m-d),默认7天前'), end_date:joi.string().default(moment().format('YYYY-MM-DD')).min(10).max(10).error(new Error('格式必须为(Y-m-d)')).description('结束时间(Y-m-d)默认当前时间'), idx:joi.string().default('pv,uv,vv,iv').error(new Error('传入参数必须为字符串类型')).description('使用“,”间隔查询指标,默认pv,uv,vv,iv'), }), failAction: FailAction }, response: { schema: responseModel }, }, handler: (request, reply) => { let cookie = request.state; if(cookie.logininfo) { let accountobj = JSON.parse(security.aes.decrypt(cookie.logininfo)); let values={ start_date:request.payload.start_date, end_date:request.payload.end_date, idx:request.payload.idx, } bigdata_tx.bigdata.readdata('h5/api/ctr_core_data',values,(err,res)=>{ if(err){ reply({code:111,msg:'fail',data:err}); return; } reply({code:0,msg:'success',data:res}); }) } else { reply({ code: 510, msg: '登录超时,请重新登录!', data: null }); } } },

转载于:https://www.cnblogs.com/luoliangfei/p/8359393.html

相关资源:短信接口对应的文档(调用短信接口)
最新回复(0)