a***@163.com
a***@163.com
  • 发布:2025-08-18 17:27
  • 更新:2025-08-18 17:27
  • 阅读:14

阿里云配置push推送总是报错

分类:uniCloud

const cloud = require('uni-cloud-core')

exports.main = async (event, context) => {
console.log('event : ', event); // 已有的日志打印

try {
// 1. 解析请求参数(从body中提取JSON)
const body = JSON.parse(event.body || '{}'); // 解析POST的body内容
const { clientid, title, content, payload = {} } = body;

// 2. 权限验证(已通过,这里仅做确认)  
const requestToken = event.headers['x-auth-token'];  
const validToken = 'huimingxin'; // 与你的Token一致  
if (requestToken !== validToken) {  
  return { code: 403, message: '权限验证失败' };  
}  

// 3. 参数校验(确保必要参数存在)  
if (!clientid || !title || !content) {  
  return { code: 400, message: '缺少参数(clientid/title/content)' };  
}  

// 4. 核心:调用uni-cloud-push接口发送通知  
const pushResult = await cloud.openapi.push.send({  
  type: 'unicloud', // 固定值  
  deviceType: 'all', // 推送所有设备类型(android/ios)  
  clientid: clientid, // 目标设备的clientid  
  title: title, // 通知标题  
  content: content, // 通知内容  
  payload: payload, // 自定义数据(点击通知后传递给应用)  
  // Android配置(必须,否则可能无法推送)  
  android: {  
    channelId: 'default', // 通知通道ID(需在应用中提前创建)  
    sound: 'default' // 通知声音  
  },  
  // iOS配置  
  ios: {  
    sound: 'default' // 通知声音  
  }  
});  

// 5. 推送成功:记录日志并返回结果  
console.log('推送成功,结果:', pushResult);  
return {  
  code: 200,  
  message: '推送成功',  
  data: {  
    pushId: pushResult.pushId, // 推送唯一ID(可用于查询状态)  
    clientid: clientid  
  }  
};  

} catch (err) {
// 6. 推送失败:捕获错误并返回
console.error('推送失败,错误:', err);
return {
code: 500,
message: '推送失败',
error: err.message
};
}
}总是报Cannot find module 'uni-cloud-core'

2025-08-18 17:27 负责人:无 分享
已邀请:

要回复问题请先登录注册