如何在微信小程序中通过原生Request调用Dify的Chat API

P粉328763957

P粉328763957

2026-07-31

266人浏览

原创

必须用原生wx.request调用dify chat api实现流式响应,因云函数会截断sse;需配置合法域名、设置datatype为"text"、按行解析data:事件并拼接增量文本渲染。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如何在微信小程序中通过原生request调用dify的chat api

要在微信小程序里让AI客服实时回复用户消息,必须用原生wx.request发起HTTP请求调用Dify的Chat API,不能依赖云函数中转或第三方SDK封装——因为流式响应(streaming)在云函数中会被截断,而原生请求能直接处理SSE事件流并逐字渲染。

获取Dify应用的API凭证与端点

登录Dify控制台,进入你已发布的聊天助手类应用 → 点击右上角「访问 API」→ 复制「API密钥」和「API服务器地址」。注意:密钥以app-开头,服务器地址末尾必须是/v1,例如https://api.dify.ai/v1。若使用私有部署,请确认该地址可被微信小程序合法访问(需配置合法域名并备案)。

【API服务器地址必须带/v1后缀,漏掉会导致404】

在小程序项目根目录的project.config.json中,将该地址添加到「request合法域名」列表;否则wx.request会直接失败且无错误提示。

构造符合Dify Chat API规范的请求参数

调用/v1/chat-messages接口时,必须携带以下字段:

query:用户输入的文本,不能为空字符串;

response_mode:设为"streaming"才能启用SSE流式返回;设为"blocking"则等待完整响应,但会失去打字机效果;

user:唯一标识当前用户,建议拼接"wx_" + wx.getStorageSync('openid'),避免会话混淆;

conversation_id:首次对话留空字符串,后续续聊需传入上一轮返回的conversation_id值;

微信公众平台开发入门教程 中文WORD版
微信公众平台开发入门教程 中文WORD版

由于微信的大热,为了更好的方便使用微信的用户查询一些信息,这篇文章是入门级的微信公众平台开发教程,需要的朋友可以参考下 这篇入门教程将引导你完成如下任务: 创建百度云平台应用启用微信公众平台开发模式获取订阅、文字、图片、语音、视频消息回复文本、图文及音乐消息程序开发

下载

files:如需图文问答,此处填入文件ID数组,格式为["file-xxx"],纯文本对话可省略该字段。

用wx.request发起流式请求并监听SSE事件

第一步:设置headerContent-Typeapplication/jsonAuthorizationBearer {你的API密钥}

第二步:将请求method设为POSTdata为上一步组装好的JSON对象;

第三步:关键操作——必须将dataType设为"text",否则微信会尝试自动JSON解析导致流中断;

第四步:在success回调中,对res.data按行分割(res.data.split('\n')),过滤掉空行和event:id:等非data:前缀行,提取每条data: {...}中的JSON内容;

第五步:对每个有效data块调用JSON.parse(),检查event字段:若为"message",取answer字段追加到消息列表;若为"message_end",说明本轮回复结束,可保存conversation_id供下次使用。

处理流式响应中的增量文本渲染

方法一:用setData高频更新messages数组最后一项的content字段——但微信setData有频率限制,每秒不超过10次,易卡顿;

方法二(推荐):用String.prototype.concat在内存中拼接增量文本,仅在收到message_end事件或间隔300ms后触发一次setData,避免界面抖动;

方法三:若需显示“AI正在输入”状态,在sendMessage函数开头就向messages推入一条{type:'ai', content:''}占位消息,并记录其索引,后续所有增量内容都更新该索引项。

大量免费API接口:立即使用
涵盖生活服务API、金融科技API、企业工商API、等相关的API接口服务。免费API接口可安全、合规地连接上下游,为数据API应用能力赋能!

相关文章

微信app下载
微信app下载

微信是一款手机通信软件,支持通过手机网络发送语音短信、视频、图片和文字。微信可以单聊及群聊,还能根据地理位置找到附近的人,带给大家全新的移动沟通体验,有需要的小伙伴快来保存下载体验吧!

下载

相关标签:

微信 微信小程序 dify

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
微信是谁开发的
微信是谁开发的

微信是由张小龙所带领的腾讯广州研发中心产品团队打造开发的,并不是马化腾开发的,而腾讯公司总裁马化腾是在产品策划的邮件中确定这款产品的名称叫做“微信”的。想了解更多微信相关的内容,可阅读本专题下面的相关文章。

2024.11.05

4874

8

微信是谁开发的
微信是谁开发的

微信是由张小龙所带领的腾讯广州研发中心产品团队打造开发的,并不是马化腾开发的,而腾讯公司总裁马化腾是在产品策划的邮件中确定这款产品的名称叫做“微信”的。想了解更多微信相关的内容,可阅读本专题下面的相关文章。

2024.11.05

4874

8

Dify 本地部署与企业配置
Dify 本地部署与企业配置

本专题系统讲解 Dify 从零开始的本地部署方法与企业环境配置实践,涵盖 Docker 安装、依赖准备、数据库初始化、反向代理、参数调优、安全加固与多用户开通,帮助开发者与企业团队快速搭建稳定可用的 Dify 平台。

2026.06.05

72

15

Dify Agent智能体开发实战教程
Dify Agent智能体开发实战教程

本专题聚焦 Dify Agent 智能体的设计与开发,涵盖 Agent 模式选择、工具集成、提示词设计、多步推理、上下文记忆与多 Agent 协作,帮助开发者构建可执行复杂业务任务的智能体应用。

2026.06.05

96

15

Dify RAG知识库构建实战教程
Dify RAG知识库构建实战教程

本专题围绕 Dify RAG 知识库的全流程实践展开,从文档导入、分段切片、向量化到混合检索、重排优化与召回评估,帮助你打造高准确率、低幻觉的企业知识问答应用。

2026.06.05

110

15

墨刀AI提示词教学
墨刀AI提示词教学

本合集由PHP中文网精心整理,为您提供全面的墨刀AI提示词教学。内容涵盖高质量原型撰写公式与实操窍门,助您轻松掌握AI设计工具。无论是零基础入门还是进阶技巧,都能让您快速上手,大幅提升产品设计与协作效率。

2026.08.04

6

21

墨刀AI完整入门
墨刀AI完整入门

PHP中文网为您倾力打造墨刀AI保姆级入门指南完整版!本合集从零基础讲起,涵盖AI生成原型、提示词优化、图片转原型及多轮对话等核心功能。无论您是新手还是进阶用户,都能轻松掌握产品设计全流程。快来PHP中文网,一键解锁高效设计技巧,让想法即刻成型!

2026.08.04

1

20

墨刀AI进阶技巧
墨刀AI进阶技巧

本合集由PHP中文网精心整理,为您提供墨刀AI核心进阶策略指南。内容涵盖高效提示词写作、原型智能生成与微调、结构化导图制作及行业分析报告输出等实战技巧。助您轻松掌握AI设计工具,大幅提升产品设计与团队协作效率。

2026.08.04

6

14

火山引擎实名认证失败怎么办
火山引擎实名认证失败怎么办

火山引擎实名认证失败可能与证件信息填写错误、姓名或企业信息不一致、证件照片不清晰、营业执照状态异常、手机号验证失败或审核资料不完整有关。本专题整理个人认证、企业认证、资料上传、审核退回、重新提交和认证不通过的常见处理方法。

2026.08.04

3

10

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
秒哒微信小程序发布
秒哒微信小程序发布

共0课时 | 0人学习

微信小程序开发之API篇
微信小程序开发之API篇

共15课时 | 1.6万人学习