后端请求云函数传参了payload,前端监听打印拿不到payload
前端监听代码如下:click时打印没有payload入参
export default {
onLaunch: function() {
console.log('App Launch')
uni.onPushMessage((res) => {
// 监听【在线、离线】通知栏消息的点击
if(res.type == 'click'){
// 如果需要跳转app内指定页面,则自己实现下方的跳转代码。
uni.navigateTo({
//页面路径示例值:/pages/pushinfo/pushinfo
url:'指定页面路径'
})
}
// 监听【在线】消息到达。若云函数设置了 "force_notification":true,则不会触发此 receive。
if(res.type == 'receive'){
//开发者可以自己在此回调,调用 createMessage 创建通知栏消息展示。或者处理其它业务逻辑。
console.log("接收到的消息内容",res.payload);
}
})
},
onShow: function() {
console.log('App Show')
},
onHide: function() {
console.log('App Hide')
}
}
- 发布:2025-12-01 15:28
- 更新:2026-01-15 13:48
- 阅读:134
uniPush2.0监听拿不到payload参数
想问一下老师,我们要在后台配置打开应用内特定页面,这块intent应该如何配置才能在
uni.onPushMessage((res) => {
console.log('"应用从推送服务器接收到推送消息事件', res);
// 监听通知栏消息的点击
if (res.type == "click") {
console.log('"click"-从系统推送服务点击消息启动应用事件;', res);
}
// 监听在线推送消息,若云函数设置了 "force_notification":true,则不会触发此 receive。
if (res.type == "receive") {
console.log('"receive"-应用从推送服务器接收到推送消息事件', res);
}
})
收到参数
目前配置了intent:intent:mall://com.mall/goods/goodsDetail#Intent;scheme=mall;package=com.mall;component=com.mall/io.dcloud.PandoraEntry;launchFlags=0x10008000;S.path=/m/goods-detail;S.query=goodsId=222;end
收到的消息如下:
{
"type": "click",
"data": {
"UUID": "androidPushMsg150355860",
"title": "0115push",
"appid": "UNIE0505174",
"content": "0115push 荣耀",
"payload": {
"title": "0115push",
"content": "0115push 荣耀"
}
}
}
为什么收不到path和query这两个参数






根哥 (作者)
private UniPushResponse callUniPushFunction(List<String> cids, String title, String content, Map<String,Object> payload) {
try {
// 构建请求URL
String url = String.format("%s/%s", pushConfig.getServerUrl(), pushConfig.getFunctionName());
Map<String,Object> params = new HashMap<>();
params.put("request_id", String.valueOf(System.currentTimeMillis()));
params.put("cids", cids);
params.put("title", title);
params.put("content", content);
params.put("payload", payload);
String jsonBody = JSON.toJSONString(params);
log.info("UniPush请求参数: {}", jsonBody);
payload是个map和cids同层级
2025-12-02 09:56
根哥 (作者)
麻烦解惑一下,谢谢
2025-12-02 09:56
套马杆的套子
回复 根哥: 你这个也不是云函数啊,看云函数的,你这java调用的那个云函数
2025-12-02 13:19
根哥 (作者)
回复 套马杆的套子: 麻烦看下是不是这个原函数得配置界面
2025-12-02 13:34
套马杆的套子
回复 根哥: 跟配置没关系,看云函数里面的代码咋写的
2025-12-02 13:35
根哥 (作者)
回复 套马杆的套子: 你值得云函数里面是?
2025-12-02 13:37
根哥 (作者)
回复 套马杆的套子: 没理解到你提到的云函数里面的代码,原文贴出了前端的监听的,还有个前端uniCloud.getPushManage的一个方法
2025-12-02 13:44
套马杆的套子
回复 根哥: ...云函数是谁写的啊?你下面的图,是云函数的日志,要看云函数的代码,是在hbx中的uniCloud里
2025-12-02 13:45