微信扫码
添加专属顾问
我要投稿
HTTP节点包括API请求类型(GET、POST、HEAD、PATCH、PUT、DELETE),鉴权类型(无、API-Key基础、API-Key Bearer、API-Key自定义),HEADERS键值设置,PARAMS键值设置,BODY(none、form-data、x-www-form-urlencoded、raw text、JSON),超时设置(连接超时、读取超时、写入超时),输出变量(body String 响应内容、status_code Number 响应状态码、headers Object 响应头列表 JSON、files Array[File] 文件列表)。说明:在平时开发中,主要使用GET和POST这两种API请求类型。
功能:查询所有产品。GET请求是获取全部资源。
实现:后端通过Flask实现@app.route('/products', methods=['GET']):
执行Workflow后,在跟踪界面(开始->HTTP请求->结束)可查看最终输出:
功能:创建一个新的产品。POST请求是创建新资源。
实现:后端通过Flask实现@app.route('/products', methods=['POST']):
如果出现status_code: 502,且确保POST接口没有问题,那么基本上是设置了Proxy代理问题,关闭代理接口正常运行。
执行Workflow后,在跟踪界面(开始->HTTP请求->结束)可查看最终输出:
功能:根据id检查产品是否存在。HEAD请求为检查资源的存在性。
实现:后端通过Flask实现@app.route('/products/<int:id>', methods=['HEAD']):
执行Workflow后,在跟踪界面(开始->HTTP请求)可查看最终输出:
(1)当使用HEAD方法访问/products/[int:id](int:id)时,函数会检查是否存在具有该ID的产品。
(2)如果产品存在,函数返回状态码200,表示资源存在,但不会返回产品的内容。
(3)如果产品不存在,函数返回状态码404,表示资源不存在。
执行Workflow后,在跟踪界面(开始->HTTP请求->结束)可查看最终输出:
功能:根据id更新产品的名字。PATCH请求为部分更新资源。
实现:后端通过Flask实现@app.route('/products/<int:id>', methods=['PATCH']):
执行Workflow后,在跟踪界面(开始->HTTP请求->结束)可查看最终输出:
功能:替换指定id的产品资源。PUT请求为完全替换资源。
实现:后端通过Flask实现@app.route('/products/<int:id>', methods=['PUT']):
执行Workflow后,在跟踪界面(开始->HTTP请求->结束)可查看最终输出:
核心代码是product.update(request.json)。product.update(...) 调用 product 字典的 update 方法,并将 request.json 作为参数传入。这个方法会遍历 request.json 中的所有键值对:
(1)如果 product 中已存在相同的键,则会用 request.json 中的值更新 product 中的值。
(2)如果 product 中不存在对应的键,则会将这个键值对添加到 product 中。
功能:删除指定id的产品资源。DELETE请求为删除资源。
实现:后端通过Flask实现@app.route('/products/<int:id>', methods=['DELETE']):
执行Workflow后,在跟踪界面(开始->HTTP请求)可查看最终输出:
API-Key基础: 使用预定义的头字段(如x-api-key)传递API密钥,简单直接。API-Key Bearer: 使用OAuth风格的Bearer Token传递API密钥,更适合需要增强安全性的场景。API-Key自定义: 根据需求自定义API密钥的传递方式,提供更大的灵活性。
(1)API-Key基础
API Key 基础认证是一种简单的认证方式,客户端在请求时将API密钥作为请求的一部分进行传递。通常,它会在请求头中包含一个特定的字段来传递API密钥。示例如下:
GET /resource HTTP/1.1
Host: api.example.com
x-api-key: your_api_key_here
(2)API-Key Bearer
API Key Bearer认证方式类似于使用OAuth的Bearer Token。客户端在请求头中的Authorization字段中传递API密钥,并以"Bearer"作为前缀。这种方式常用于需要更高安全性的场景。示例如下:
GET /resource HTTP/1.1
Host: api.example.com
Authorization: Bearer your_api_key_here
(3)API-Key自定义
API Key自定义认证允许开发人员根据需求自定义API密钥的传递方式。可以将API密钥放在请求的查询参数、请求体中,或者在请求头中使用自定义字段名。这种方式的灵活性较高,但需要确保在客户端和服务器端一致使用同样的方式。
查询参数方式,示例如下:
GET /resource?api_key=your_api_key_here HTTP/1.1
Host: api.example.com
请求体方式,示例如下:
POST /resource HTTP/1.1
Host: api.example.com
Content-Type: application/json
{
"api_key": "your_api_key_here",
"other_data": "value"
}
自定义头字段方式,示例如下:
GET /resource HTTP/1.1
Host: api.example.com
x-custom-api-key: your_api_key_here
(1)幂等性:POST不是幂等的,而PUT是幂等的。
(2)用途:POST用于创建,PUT用于更新或替换。
(3)URI的知晓:使用POST时,通常不知道新资源的URI;使用PUT时,通常知道资源的URI。
当需要上传文件时,应选择 form-data;如果仅需要提交简单的文本表单,x-www-form-urlencoded 是一个更简洁的选择。
(1)form-data 通常用于文件上传或当表单包含文本和文件数据时使用。
(2)x-www-form-urlencoded 通常用于简单的表单提交,当数据仅包含文本内容时使用。
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业
2025-10-16
告别升级噩梦:Dify 二次开发的无缝适配策略与实战案例(基于 v1.9.1)
2025-10-13
用Dify搭建企业知识库:5个实战技巧提升检索准确率90%
2025-10-13
Dify接口调用实战指南:从入门到精通的避坑手册,收藏了!
2025-10-12
Dify1.6.0升级1.9.1步骤及踩坑记
2025-10-10
用 Dify 零代码搭建 AI 用研助理,5分钟完成100个虚拟用户调研
2025-09-30
重大消息,刚刚Dify 1.9.1发布了!我们聊聊带来了哪些吸引人的功能特性?
2025-09-26
内网环境下Dify1.9.0版本镜像构建过程记录
2025-09-23
刚刚Dify 1.9.0正式发布,快看看有哪些新变化?
2025-10-13
2025-09-03
2025-09-16
2025-09-06
2025-08-19
2025-09-23
2025-09-02
2025-07-30
2025-08-18
2025-09-04
2025-09-30
2025-09-23
2025-09-06
2025-09-05
2025-08-29
2025-08-18
2025-08-02
2025-07-30