Dify中的对外暴露
本章我们说下如何将做好的Dify应用对外暴露,提供服务能力
Dify在官网中提到了,支持发布为公开Web站点,嵌入式,API模式调用,和前端组建再开发。
这里我们主要说下如何通过API调用,不过也会提下其他的暴露方式。
对于发布为Web站点
则是基于Dify本身对外提供访问
需要将应用设置为可以公开访问

接下来就可以访问提供的URL来进行使用了


在官方提供的页面中,还支持批量运行页面

对于嵌入页面,无论是iframe 和script都可以,但是我个人来看并非一个好决定
因为需要将密钥放入到前端之中,有很大的暴露隐患
如果有需求,直接查看如下链接
https://docs.dify.ai/zh-hans/guides/application-publishing/embedding-in-websites
对于基于Api的调用,比较符合最佳实践
完全可以由后端进行调用AI API
前端去通过调用后端,从而避免API密钥的泄漏
对于一个应用,如果想要通过API访问,直接在应用右侧点击访问API,获取到对应的API密钥。
这里给出最为常见的调用AI的方式
|
curl –location –request POST ‘https://api.dify.ai/v1/completion-messages’ \
–header ‘Authorization: Bearer ENTER-YOUR-SECRET-KEY’ \ –header ‘Content-Type: application/json’ \ –data-raw ‘{ “inputs”: {}, “response_mode”: “streaming”, “user”: “abc-123” }’ |
以及
|
curl –location –request POST ‘https://api.dify.ai/v1/chat-messages’ \
–header ‘Authorization: Bearer ENTER-YOUR-SECRET-KEY’ \ –header ‘Content-Type: application/json’ \ –data-raw ‘{ “inputs”: {}, “query”: “eh”, “response_mode”: “streaming”, “conversation_id”: “1c7e55fb-1ba2-4e10-81b5-30addcea2276”, “user”: “abc-123” }’ |