Zabbix问题记录2--踩坑HttpRequest,header添加无效

news/2025/2/26 1:25:38

背景

在试图尝试通过Zabbix接入DeepSeek API的时候,由于使用了HTTP的方式,所以需要使用Zabbix 自带的HttpRequest库进行请求,产生了下面的问题

问题

curl
curl -X POST https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
    "model": "deepseek-r1",
    "messages": [
        {
            "role": "user", 
            "content": "9.9和9.11谁大"
        }
    ]
}'

这是阿里云的DeepSeek API的请求示例,可以看到必须加入两个header,即必须把API_KEY放进去,所以我写了如下的代码

request.addHeader('Content-Type','application/json');
request.addHeader('Authorization','Bearer xxx');

但是收获了如下的error

250751:20250224:105524.139 [ DeepSeek Webhook ] Received response with status code 401
{"error":{"message":"You didn't provide an API key. You need to provide your API key in an Authorization header using Bearer auth (i.e. Authorization: Bearer YOUR_KEY). ","type":"invalid_request_error","param":null,"code":null},"request_id":"327c1ff0-1ec2-9a60-b95b-9516ab2d2745"}

显示没有找到对应的key

解决方案

从中文文档中,很难发现问题出在了哪里
在这里插入图片描述

但是直到我去查他的代码示例

req.addHeader('Content-Type: application/json');

作为对比

request.addHeader('Content-Type','application/json');

有没有发现哪里不太一样?根本就不是key-value的模式!
然后我就去转成了英文的文档,英文文档很明显的写了只需要输入value,所以根本就不是key-value的格式
在这里插入图片描述

于是修改代码,请求成功!
在这里插入图片描述

总结

不说别的,少看中文文档,能帮自己减少很多坑!


http://www.niftyadmin.cn/n/5867030.html

相关文章

手机怎样玩电脑游戏?

如果您正在寻找一款能够实现手机远程控制电脑玩游戏的软件,本文推荐远程看看软件。这款软件不仅支持手机远程控制电脑,还具备电脑与电脑之间的多端互控功能,您能够随时随地畅玩游戏,享受无缝的游戏体验。此外,远程看看…

【前端】【功能函数】eachTree,封装一个通用的遍历树结构的模板

《递归遍历树结构函数 eachTree 的详解》 一、函数概述 eachTree 是一个用于递归遍历树结构数据的工具函数。在前端开发中,树结构数据(如菜单树、组织结构树等)经常会被使用,对树结构进行遍历并执行一些操作是常见的需求。该函数…

C++核心指导原则: 错误处理

C Core Guidelines 整理目录 哲学部分接口(Interface)部分函数部分类和类层次结构部分枚举部分资源管理部分性能部分错误处理 E: Error handling E.1: Develop an error-handling strategy early in a design 翻译: 在设计早期制定一个错误处理策略。原因: 为确保代码的健壮…

基于物联网的家庭版防疫面罩设计与实现(论文+源码)

2.1 功能设计 本次基于物联网的家庭版防疫面罩设计采用单片机作为主控核心,利用温度检测模块、红外检测模块、风扇控制器模块、紫外线消毒模块、报警提示模块构成整个系统。在系统设计上,主要包括以下功能: (1)系统具…

机器学习数学基础:32.斯皮尔曼等级相关

斯皮尔曼等级相关教程 一、定义与原理 斯皮尔曼等级相关系数(Spearman’s rank - correlation coefficient),常用 ρ \rho ρ表示,是一种非参数统计量,用于衡量两个变量的等级之间的关联程度。它基于变量的秩次&…

【第五节】C++设计模式(创建型模式)-Prototype(原型)模式

目录 一、问题背景 二、 模式选择 三、讨论总结 一、问题背景 在软件开发中,有时我们需要通过已有对象来创建新对象,而不是从头开始构建。这种需求让我想起了现代制造业中的 3D 打印技术。通过扫描一个现有的物体,3D 打印机可以快速复制出…

SpringSecurity基于注解实现方法级别授权:@PreAuthorize、@PostAuthorize、@Secured

Spring Security 访问权限系列文章: 《SpringSecurity基于配置方法控制访问权限:MVC匹配器、Ant匹配器》 《SpringSecurity基于注解实现方法级别授权:@PreAuthorize、@PostAuthorize、@Secured》 《SpringSecurity设置白名单》 方法调用授权的含义很明确,与 HTTP 端点级别的…

【GESP】C++二级模拟 luogu-b3995, [GESP 二级模拟] 小洛的田字矩阵

GESP二级模拟题,多层循环、分支语句练习,难度★✮☆☆☆。 题目题解详见:https://www.coderli.com/gesp-2-luogu-b3995/ 【GESP】C二级模拟 luogu-b3995, [GESP 二级模拟] 小洛的田字矩阵 | OneCoderGESP二级模拟题,多层循环、分…