调用Vision API Product Search POST接口的cURL写法指引
Vision API Product Search cURL请求编写方法
文档里标注的「发送请求可选择以下选项之一」,是官方给不同使用习惯的用户提供的不同调用方式,包括各类编程语言SDK、REST接口等,你只需要发带JSON的POST请求的话,直接选REST接口对应的选项即可,其余SDK类选项可以直接忽略。
cURL命令固定结构
不需要纠结文档里cURL部分的冗余说明,按照下面的固定模板替换参数即可:
curl -X POST \ "接口完整请求地址,记得拼接上你自己的API鉴权key" \ -H "Content-Type: application/json" \ -d "符合接口要求的JSON请求体内容"
参数说明
-X POST:强制指定请求方法为POST,和接口要求匹配- 双引号包裹的请求地址:从文档REST选项里直接复制对应接口的路径,替换掉路径中占位的项目ID、服务节点位置参数,最后在地址末尾拼接
?key=你自己申请的Vision API密钥 -H "Content-Type: application/json":声明请求体格式为JSON,该请求头不能省略,否则服务端会返回格式错误-d后面跟请求体,支持两种传法:- 本地文件传参:如果你的JSON请求体内容较长,提前把JSON内容存为本地
.json文件,传参时写-d @/你本地的文件路径/请求体文件名.json即可,比如当前目录下存了req.json就写-d @req.json - 直接传字符串:如果JSON内容很短,可以直接把JSON字符串放在-d后面,注意外层用单引号包裹,避免shell转义错误,比如
-d '{"displayName":"测试商品集","productSetId":"test001"}'
- 本地文件传参:如果你的JSON请求体内容较长,提前把JSON内容存为本地
常见错误排查
- 跑命令返回401/403:检查API密钥是否正确,是否已经开通Vision API Product Search的服务权限
- 跑命令返回400:先检查Content-Type头有没有加,再检查JSON格式是否合法,有没有缺逗号、引号不匹配的问题,再核对字段是否和文档要求一致
- Windows cmd环境下运行报错:把命令里的单引号全部替换为双引号,JSON内部的双引号前加反斜杠
\转义,更推荐使用Git Bash、WSL环境运行cURL命令,避免转义问题
内容的提问来源于stack exchange,提问作者Flutter Dev
相关产品推荐
相关产品推荐

