微信云开发官网
参考资料:https://developers.weixin.qq.com/miniprogram/dev/OpenApiDoc/user-info/phone-number/getPhoneNumber.html upd1.在未修改代码的情况下返回值变了,真神奇[图片] ------------------------------------------------------ 参照如上资料进行了云函数的编写,但是openapi.phonenumber.getPhoneNumber的返回值如下图,没有返回电话号码而是返回了appid和openid 调用云函数获取手机号 Page({ getPhoneNumber (e) { console.log(e.detail.code) // 动态令牌 console.log(e.detail.errMsg) // 回调信息(成功失败都会返回) // console.log(e.detail.errno) // 错误码(失败时返回) wx.cloud.callFunction({ name: "get_phone_num", data:{ code: e.detail.code }, complete:res=>{ console.log(res) } }) } }) 含有openapi.phonenumber.getPhoneNumber的云函数 // 云函数入口文件 const cloud = require('wx-server-sdk') cloud.init({ env: cloud.DYNAMIC_CURRENT_ENV }) // 使用当前云环境 // 云函数入口函数 exports.main = async (event, context) => { console.log("event: ",event) const {result} = await cloud.openapi.phonenumber.getPhoneNumber({ code:event.code }); success:res=>{ console.log(res) return res } }
腾讯云开发,微信小程序如何注册登录关联到云后台账号,注册后的用户自动调价到云后台用户管理的用户中
在微信云函数环境中,使用 axios 发起 HTTP 请求时,为什么会出现规律性的错误?具体表现为: 对 Gemini API 的请求,在11秒左右出现 503 Service Unavailable 对其他供应商 API 的请求,在2秒左右出现 429 Too Many Requests 这些问题在其他运行环境(如普通 Node.js 服务器)中都不会出现。 错误日志对比 案例1: Gemini API 503错误02/06 16:38:49.132 - 开始 API 请求 02/06 16:39:01.107 - 错误: Request failed with status code 503 错误堆栈: AxiosError: Request failed with status code 503 at settle (/var/user/node_modules/axios/dist/node/axios.cjs:2026:12) at IncomingMessage.handleStreamEnd (/var/user/node_modules/axios/dist/node/axios.cjs:3142:11) ... at async callGeminiAPI (/var/user/index.js:193:22) ### 案例2: 其他供应商 API 429错误 ``` 02/02 20:06:18.430 - 请求开始 02/02 20:06:20.305 - 错误: Request failed with status code 429 错误堆栈: AxiosError: Request failed with status code 429 at settle (/var/user/node_modules/axios/dist/node/axios.cjs:2026:12) at IncomingMessage.handleStreamEnd (/var/user/node_modules/axios/dist/node/axios.cjs:3142:11) ... at async exports.main (/var/user/index.js:160:22) ``` 关键问题 为什么相同的 axios 配置在云函数环境中会产生不同的错误? 为什么错误的时间点如此规律(503约11秒,429约2秒)? 为什么这些错误在其他运行环境中不会出现? axios 在云函数环境中是否需要特殊的配置? 而且云函数有时候没问题,但又经常有问题?
调用wx.cloud.login后,提示is not a function 开发者工具:RC 1.06.2503281 project.config.json中: miniprogramVersion": "2.24.0" app.js中: // 引入云开发 SDK 并初始化 if (!wx.cloud) { console.error('请使用 2.2.3 或以上的基础库以使用云能力') } else { wx.cloud.init({ env: 'yun环境ID', // 云开发环境 ID traceUser: true }); console.error('SDKVersion=',wx.getSystemInfoSync().SDKVersion) console.log('wx.cloud 对象:', wx.cloud) // 检查是否包含 login 方法 } 此时跟踪出来的SDKVersion= 3.8.0,wx.cloud对象是Proxy{这里面有很多内容},问元宝AI,他说是wx.cloud被代理了。 怀疑是插件问题,在开发者工具-工具-插件-模拟器插件里有一个“多端插件开发插件0.0.14”显示已安装。但在里面没找到删除或禁用插件的地方。 另外云开发第一回用,不知道是不是云开发环境有啥问题,请问如何排查。
目前有小程序A(appid:wxb576617375e9e426)已共享云环境,也添加云函数clcloudbase_authcloudbase_authoudbase_authcloudbase_auth 被授权小程序B (appid:wx7a0a44d28d932ebe),按照如下初始化: var c1 = new wx.cloud.Cloud({ resourceAppid: 'wxb576617375e9e426',//A小程序APPID resourceEnv: 'cloud1-0gtmj0jad44e58ac',//A小程序云环境 }) await c1.init() 调用AI: let list = await c1.extend.AI.bot.list({ pageNumber: 1, pageSize: 10 }); 结果返回错误: tcbapi_get_tcb_access_info fail Error: errCode: -501000 | errMsg: TCB_PROVIDER_ERROR_4XX 请前往云开发AI小助手查看问题:https://tcb.cloud.tencent.com/dev#/helper/copilot?q=AUTH_SIGNIN_FAILED at new C (<anonymous>:1:255747) at success (<anonymous>:1:268121) at Function.success (WAServiceMainContext.js?t=wechat&s=1740040493611&v=3.7.8:1) at p (WAServiceMainContext.js?t=wechat&s=1740040493611&v=3.7.8:1) at Object.success (WAServiceMainContext.js?t=wechat&s=1740040493611&v=3.7.8:1) at i (WAServiceMainContext.js?t=wechat&s=1740040493611&v=3.7.8:1) at np (WAServiceMainContext.js?t=wechat&s=1740040493611&v=3.7.8:1) at up (WAServiceMainContext.js?t=wechat&s=1740040493611&v=3.7.8:1) at WAServiceMainContext.js?t=wechat&s=1740040493611&v=3.7.8:1 at a (WAServiceMainContext.js?t=wechat&s=1740040493611&v=3.7.8:1) 是还需要做什么设置吗,或者是方法没有调用正确
GET https://api.weixin.qq.com/cgi-bin/token 返回token的过期时间是7200秒,刚过一个小时,使用token请求https://api.weixin.qq.com/wxa/getwxacodeunlimit接口时,返回 "errcode": 40001, "errmsg": "invalid credential, access_token is invalid or not latest, could get access_token by getStableAccessToken, more details at https://mmbizurl.cn/s/JtxxFh33r rid: 6791ac8a-3bff7e86-159e286f" }
小程序也绑定了云环境,其他支付那些功能都写完了没有问题,就在生成二维码这个地方提示没权限,我也检查了长度没有超出32个字符 我的日志如下: 返回结果 {"success":false,"error":"errCode: -604101 function has no permission to call this API | errMsg: system error: error code: -604101"} 日志 START RequestId: d0024bdd-3d12-4b8b-9a61-b7695bcf85f3 Event RequestId: d0024bdd-3d12-4b8b-9a61-b7695bcf85f3 2025-04-04T11:08:00.757Z 生成小程序码失败: CloudSDKError: errCode: -604101 function has no permission to call this API | errMsg: system error: error code: -604101 at callGeneralOpenAPI (/var/user/node_modules/wx-server-sdk/index.js:487:27) at processTicksAndRejections (node:internal/process/task_queues:96:5) at async callWXOpenAPI (/var/user/node_modules/wx-server-sdk/index.js:2364:28) at async exports.main (/var/user/index.js:12:20) { errCode: -604101, errMsg: 'system error: error code: -604101' } Response RequestId: d0024bdd-3d12-4b8b-9a61-b7695bcf85f3 RetMsg: {"success":false,"error":"errCode: -604101 function has no permission to call this API | errMsg: system error: error code: -604101"} END RequestId: d0024bdd-3d12-4b8b-9a61-b7695bcf85f3 Report RequestId: d0024bdd-3d12-4b8b-9a61-b7695bcf85f3 Duration: 180ms Memory: 256MB MemUsage: 22.613281MB 代码如下: // 云函数入口文件 const cloud = require('wx-server-sdk') cloud.init({ env: cloud.DYNAMIC_CURRENT_ENV }) // 云函数入口函数 exports.main = async (event, context) => { try { const wxContext = cloud.getWXContext() const openid = event.openid || wxContext.OPENID // 生成小程序码(简化版) const result = await cloud.openapi.wxacode.getUnlimited({ scene: `i=${openid}`, // 缩短键名以适应32字符限制 page: 'pages/index/index', width: 430, // 使用更大的尺寸便于扫码 isHyaline: false, // 不透明背景 autoColor: false, // 不使用自动配色 lineColor: { r: 0, g: 0, b: 0 } // 黑色线条 }) // 上传到云存储 const uploadResult = await cloud.uploadFile({ cloudPath: `qrcodes/${openid}_${Date.now()}.jpg`, fileContent: result.buffer }) // 获取临时访问链接 const fileResult = await cloud.getTempFileURL({ fileList: [uploadResult.fileID] }) return { success: true, fileID: uploadResult.fileID, tempFileURL: fileResult.fileList[0].tempFileURL, } } catch (error) { console.error('生成小程序码失败:', error) return { success: false, error: error.message } } }
点击这个页面的时候不能够删掉云开发copilot这个页面,点击叉叉符号也不能够删除 [图片]
1.我的evn是能够初始化成功;开发者工具版本是最新的(今早更新的),包是 WeChatLib: 3.7.10 (2025.3.6 16:19:18) 2.主要是在调用AI客服回复时无法响应,会提示“抱歉,我暂时无法回答您的问题。” 3.下面是主要代码,敏感信息脱敏了。 4.底部有附件2张图片供参考 // 确保云开发环境已初始化 try { wx.cloud.init({ env: "cloudbase-xxxx traceUser: true }); } catch (e) { console.log('云环境已初始化,跳过', e); } // 调用腾讯AI+的API获取回复 const res = await wx.cloud.extend.AI.bot.sendMessage({ data: { botId: 'bot-84c94870', msg: content, history: history // 传入历史对话记录 } }); console.log('API调用成功,开始处理响应'); let fullResponse = ''; // 通过事件流获取AI回复 for await (let event of res.eventStream) { // 收到结束信号,终止循环 if (event.data === '[DONE]') { console.log('收到结束信号'); break; } try { console.log('收到事件数据:', event.data); const data = JSON.parse(event.data); // 获取输出正文 const aiContent = data.content; if (aiContent) { console.log('收到AI内容:', aiContent); fullResponse += aiContent; // 更新当前AI消息内容,实现打字效果 const messages = [...this.data.messages]; messages[messageIndex].content = fullResponse; this.setData({ messages, scrollToMessage: `message-${messageIndex}` }); } } catch (parseError) { console.error('解析事件数据出错:', parseError, event.data); } } // 更新历史记录中添加AI的回复 if (fullResponse) { console.log('完整回复:', fullResponse); history.push({ role: 'bot', message: fullResponse }); this.setData({ history }); } else { const messages = [...this.data.messages]; messages[messageIndex].content = '抱歉,我暂时无法回答您的问题。'; this.setData({ messages }); } } catch (error) { console.error('AI回复出错:', error); console.error('错误详情:', JSON.stringify(error)); // 显示错误信息 this.addMessage({ type: 'ai', content: '抱歉,系统出现了一些问题,请稍后再试。错误信息: ' + error.message }); } finally { // 无论成功失败,都取消等待状态 this.setData({ isWaiting: false }); } [图片][图片]
1
https://developers.weixin.qq.com/miniprogram/dev/wxcloudservice/wxcloud/guide/database/security-rules.html。 目前test数据库中自定义安全规则如下: { "read": "auth.openid in get(`database.test.${doc._id}`).sharedUsers", "write": false, } 为什么我的 sharedUser 中明明包括了当前用户的 openid 在查询test库中所有 sharedUsers中包括了当前用户的openid的记录时会一直提示:database permission denied。 查询命令如下: const result = await db .collection("test") .where({ sharedUsers: openid, // _openid: openid, }).get(); 如果我把 read 设置为 true,则可以查询出来。 ## 更新 发现即使设置为创建者都是没有权限的: { "read": "doc._openid == auth.openid", "write": "doc._openid == auth.openid" } 对此只想说mmp
通过一步调用登录的示例(mplogin)登录后,获取到的 userinfo 为 CloudId, 要获取CloudId中的数据,可否在前端或者托管服务中使用开放接口能力获取数据?
腾讯云微搭平台搭建了两个页面,使用的云数据库,可视化界面数据展示正常。导出小程序代码包后,放到自有小程序后在开发者工具访问页面。提示“调用数据源store_product_zh57lp5方法wedaGetRecordsV2失败: 操作失败。获取数据源信息失败”,是什么原因 [图片]
问题描述: 环境id: realsoulpet-7g6g8vcvacf856a3 appid:wx22cd98bb8e36dd4a 云函数名称:sendSsm 微搭低代码可视化小程序中添加了按钮组件,调用云函数,云函数中调用openapi的subscribeMessage.send方法,点击微信小程序的按钮,显示报错信息:{"errCode":-501007,"errMsg":"subscribeMessage.send:fail missing wxCloudApiToken 请前往云开发AI小助手查看问题:https://tcb.cloud.tencent.com/dev#/helper/copilot?q=INVALID_PARAM"} 这么做的原因: 目前云开发环境下有两个应用,分别是面向客户的微信小程序和面向商家的网页应用。订阅消息发送的请求是来自于 h5 web端的商家管理应用,但推送的消息卡片跳转链接希望可以跳转到用户使用的微信小程序的页面。看到云开发调用可以实现通过openapi指定共享环境的appid来实现跳转指定小程序的页面。开发尝试首先在微信小程序页面创建了按钮调用云函数。但实现的过程出现了报错,请帮忙解决一下。谢谢。
[图片]没有欠费,为什么所有图片都显示不出来?
调用方的page.js写的调用云存储(存到资源方的云存储内) wx.cloud.uploadFile({}),没有走success,走了fail,提示上传失败
刚刚在微信小程序中接入 DeepSeek,但是回答生成的时间太长,想用流式输出,改善体验。 这种情况下,是否可以实现流式输出?有没有相关的介绍或教程?感谢!
https://developers.weixin.qq.com/miniprogram/dev/platform-capabilities/industry/B2b_store_assistant.htmlhttps://developers.weixin.qq.com/miniprogram/dev/platform-capabilities/industry/B2b_store_assistant.html 申请商户号报名技术服务费优惠活动支付与退款(接口) 小程序接口 wx.requestCommonPayment(Object object)查看账单 请求地址: https://api.weixin.qq.com/retail/B2b/downloadbill?access_token=ACCESSTOKEN&pay_sig=xxxxx 请求方式:POST提现分账合单支付 查询订单接口说明 请求地址:https://api.weixin.qq.com/retail/B2b/getorder?access_token=ACCESS_TOKEN&pay_sig=xxxxx 请求方式:POST 例如,微信小程序支付, // 下单结果 orderResult = await $w.cloud.callFunction await cloud.callFunction // 唤起微信支付组件,完成支付 wx.requestPayment ... B2b支付呢? 盼回!
文档里没看见,问了“腾讯云AI代码助手”也说不持支,想确认一下,感谢大家。
云托管文档中提出,如只有小程序和公众号访问,则推荐关闭公网访问,但是公网访问关闭后,公众号如何访问云托管提供的页面与接口(自定义域名也需要公网访问功能)?推荐使用静态资源服务,但是静态资源服务没有提供cicd功能,导致相关页面更新后,需要手动编译上传,是否有相关接口或者解决方案解决该问题,否则静态资源服务很鸡肋
小程序示例
小程序官方示例Demo,包含云开发示例。
小程序示例
扫码体验