微信扫码
添加专属顾问
我要投稿
“ 你平时设计完成一个dify工作流,你是怎么让别人使用的?是不是直接把工作流的分享链接发出去就不管了,还是说,就算你发出去,你很担心链接被滥用?今天手把手教你给dify工作流加把锁,通过预设一个用户登录模块,实现有限范围地控制预览链接被滥用。”
01
—
逻辑说明
我们可以在开始节点中,预设两个变量,分别是name和password。然后用户在使用的时候,先填写name和password,再判断name和password是否符合我们预设的账户库,如果不符合,就直接报错,如果正确,就对登录状态覆盖赋值。
02
—
验证账户的代码和变量设置
我们先说说变量的预设吧:
预设两个变量:login、user。
login是记录本次对话用户的登录状态;
user是工作流开发者自己可预设的一些账号信息,只有符合预设的账户,才能正确登录。后续你可以改成http请求远程数据库,实现网络账户登录也行,本案例只讲预设账户登录。
验证账户的代码:
def main(name: str, password: str, user: list) -> dict:
# 初始化结果变量
a = 0# 默认值为0
b = ""# 默认的错误信息
# 遍历用户数组,验证用户名和密码
for u in user:
if u["name"] == name and u["password"] == password:
a = 1# 如果匹配成功,设置a为1
b = "登录成功"# 登录成功的提示
break# 找到匹配后可以提前结束循环
else:
# 如果循环正常结束而没有找到匹配,设置错误信息
b = "账号或密码不正确"
# 返回结果
return {"result": a, "message": b}
至此,一个简单的登录模块就完成了。
怎么样?是不是很简单?留个作业,你觉得注册模块要怎么做?本文是否能给你一点灵感呢?
最后我想说下,为什么要学会用dify制作一个用户登录模块。有如下几个场景,你极大可能会遇到:
黑盒测试阶段:
当你开发了一个工作流,你想邀请别人体验一下,用户在看不到你工作流的情况下,他只能正常的对话,给他一个预设的账户,用户才能参与测试,这是对测试风险的把控措施。开发者随时可以修改预设账户库,防止测试链接被滥用。
有限范围的销售:
如果你的工作流是为客户服务的,你完全可以预设账户库,将账户发给客户,反正陌生人拿到链接后滥用。
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2025-07-11
Dify v1.6.0:原生集成 MCP,实现 AI 能力的双向流通
2025-07-11
Dify 1.6.0 重磅上线:原生MCP 双向集成、结构化输出升级!
2025-07-11
Dify终于全面支持MCP了!就在刚刚,Dify发布V1.6.0版本,并宣布支持Anthropic 的模型上下文协议 (MCP)
2025-07-10
我用Dify打造了批量发票识别助手,一键识别上百张发票,这才是AI识别发票的正确方式
2025-07-10
Dify 中 Function Calling 与 MCP使用不同使用场景对比解析
2025-07-04
Dify中的sandbox服务
2025-07-04
将Dify对接到NextChat中的具体操作和原理
2025-07-03
dify 迎来重大更新!工作流调试工具也太实用了
2025-06-25
2025-06-04
2025-04-18
2025-04-28
2025-05-08
2025-06-03
2025-05-08
2025-04-14
2025-04-14
2025-06-02
2025-06-26
2025-06-17
2025-05-29
2025-05-28
2025-05-22
2025-04-27
2025-04-15
2025-03-20