使用 postman 传递 binary 类型的图片到后端接口遇到的坑

使用 psotman 传 binary 类型图片报错:

在这里插入图片描述

-2024-12-04 [http-nio-9090-exec-1] WARN  org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolver ======= 
Resolved [org.springframework.http.converter.HttpMessageNotReadableException: 
Required request body is missing: public com.tyler.common.entity.Result 
com.tyler.web.controller.FileController.entityExtraction2(byte[]) throws java.io.IOException]

postman 收到响应:

{"timestamp": "2024-12-04T13:01:33.658+00:00","status": 400,"error": "Bad Request","path": "/xxx/xxx"
}

原因:

我一开始用 postman 请求是没问题的,但当我复制一个请求出来时,问题就出现如上述所说的错误。

在这里插入图片描述

通过观察 postman 的 控制台 (console), 查看 Request Headers, 发现没有传递 Content-Type 这个 header。

在这里插入图片描述

然后看到 header 默认就有 Content-Type 这个 header , 但是发送请求的时候没有携带上。

在这里插入图片描述
于是我自己添加了一个 Content-Type 这个 header , 覆盖掉默认的,然后可以看到请求的时候携带上了 Content-Type , 但是请求依然失败。

在这里插入图片描述

仔细观察,虽然鞋带上了 Content-Type, 但是可以发现 Content-Length 为 0 个长度。

在这里插入图片描述

这总不能我自己再写一个 Content-Length 了吧。

于是想到将这个图片删掉,再重新上传一张。

在这里插入图片描述
再次发送请求,可以看到携带上了 Content-Type, 并且 Content-Length 也有值了。

在这里插入图片描述

总结:

就是使用 postman 的 Duplicate (复制) 功能导致的坑,解决方法就是把图片删掉重新上传。

注意:不仅使用 Duplicate 的时候会出现这样的问题,当你移动了你的请求文件的时候也会出现这样的问题,比如你将这个请求移动到另一个文件夹。


扩展:

那么后端接口怎么接收这个请求呢?请参考这篇文章 - 使用 Postman 上传二进制类型的图片到后端接口写法

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/888418.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SQL 优化经历:从 30248.271s 到 0.001s

今天分享一篇SQL优化的文,带你深入了解如何提升查询效率、降低系统负载。 无论你是数据库管理员还是开发者,都不能错过这份关于SQL性能优化的实用指南。让我们一起穿越数据库迷宫,发现隐藏在代码背后的优化黄金点! 场景 用的数据…

开发者如何使用GCC提升开发效率Opencv操作

看此篇前请先阅读 https://blog.csdn.net/qq_20330595/article/details/144134160?spm=1001.2014.3001.5502 https://blog.csdn.net/qq_20330595/article/details/144134160?spm=1001.2014.3001.5502 https://blog.csdn.net/qq_20330595/article/details/144216351?spm=1001…

PyQt 中的无限循环后台任务

在 PyQt 中实现一个后台无限循环任务,需要确保不会阻塞主线程,否则会导致 GUI 无响应。常用的方法是利用 线程(QThread) 或 任务(QRunnable 和 QThreadPool) 来运行后台任务。以下是一些实现方式和关键点&a…

node.js实现分页,jwt鉴权机制,token,cookie和session的区别

文章目录 1. 分⻚功能2. jwt鉴权机制1.jwt是什么2.jwt的应用3.优缺点 3. cookie,token,session的对比 1. 分⻚功能 为什么要分页 如果数据量很⼤,⽐如⼏万条数据,放在⼀个⻚⾯显⽰的话显然不友好,这时候就需要采⽤分⻚…

ED6H系列FPGA口袋实验室

一、产品概述 ED6H系列FPGA口袋实验室是中科亿海微自主研发的基于“FPGA在线教学平台”的教学实践工具,专为高校电子相关专业师生打造,旨在为高校师生创造更具创新性与高效性的教学场景。具有高集成度、小巧便携、可扩展设计及自主可控等特点。本系列共…

实验三:Mybatis-动态 SQL

目录: 一 、实验目的: 通过 mybatis 提供的各种标签方法实现动态拼接 sql 二 、预习要求: 预习 if、choose、 when、where 等标签的用法 三、实验内容: 根据性别和名字查询用户使用 if 标签改造 UserMapper.xml使用 where 标签进行…

Python爬虫——猫眼电影

用python中requests库爬取猫眼电影信息并保存到csv文件中 猫眼专业版 爬取界面 效果预览 代码 import requests import jsonurl1https://piaofang.maoyan.com/dashboard-ajax?orderType0&uuid1938bd58ddac8-02c2bbe3b009ed-4c657b58-144000-1938bd58ddac8&timeStamp…

python 三钱筮法项目开发

三钱筮法项目技术说明 1. 技术栈 GUI框架: CustomTkinter 现代化的Tkinter扩展提供美观的界面组件支持主题定制 数据存储: JSON 卦象数据: gua_info.json记忆数据: memory.json易经解释: detail.json 图像处理: PIL (Python Imaging Library) 处理图标和图片资源 2. 主要功…

yagmail邮件发送库:如何用Python实现自动化邮件营销?

🎥 作者简介: CSDN\阿里云\腾讯云\华为云开发社区优质创作者,专注分享大数据、Python、数据库、人工智能等领域的优质内容 🌸个人主页: 长风清留杨的博客 🍃形式准则: 无论成就大小,…

无人机的计算机仿真模拟控制

🏡作者主页:点击! 🤖编程探索专栏:点击! ⏰️创作时间:2024年12月3日10点24分 神秘男子影, 秘而不宣藏。 泣意深不见, 男子自持重, 子夜独自沉。 论文链接 点击开启你的论文编程之旅h…

vue+mars3d给影像底图叠加炫酷效果

话不多说,直接上效果图: 在这里墙体其实是有一个不太明显的流动效果 实现方式:这里我使用了PolylineEntityWallPrimitive,开始我用的是polygonEntity但是发现实现效果并不好,所有直接改用了线 map.vue文件&#xff1…

浅谈volatile

volatile有三个特性: (1)可见性 (2)不保证原子性 (3)禁止指令重排 下面我们一一介绍 (一)可见性 volatile的可见性是说共享变量只要修改,就可以被其他线…

Redis自学之路—高级特性(实现消息队列)(七)

目录 简介 Redis的Key和Value的数据结构组织 全局哈希表 渐进式rehash 发布和订阅 操作命令 publish 发布消息 subscribe 订阅消息 psubscribe订阅频道 unsubscribe 取消订阅一个或多个频道 punsubscribe 取消订阅一个或多个模式 查询订阅情况-查看活跃的频道 查询…

Java-09 深入浅出 MyBatis - 注解开发 注解映射 基本介绍 与 一对一模型

点一下关注吧!!!非常感谢!!持续更新!!! 大数据篇正在更新!https://blog.csdn.net/w776341482/category_12713819.html 目前已经更新到了: MyBatis&#xff…

【k8s】kubelet 的相关证书

在 Kubernetes 集群中,kubelet 使用的证书通常存放在节点上的特定目录。这些证书用于 kubelet 与 API 服务器之间的安全通信。具体的位置可能会根据你的 Kubernetes 安装方式和配置有所不同,下图是我自己环境【通过 kubeadm 安装的集群】中的kubelet的证…

3.建立本地仓库及常用命令

1.建立本地仓库 要使用Git对我们的代码进行版本控制,首先需要获得本地仓库 1)在电脑的任意位置创建一个空目录,作为我们的本地Git仓库 2)进入这个目录,右键点击Git Bash 窗口 3)执行命令git init 4) 如果创…

Narya.ai正在寻找iOS工程师!#Mixlab内推

如果你对AI技术和iOS开发充满热情,这里有一个绝佳的机会加入一家专注于AI应用创新的初创公司。Narya.ai正在招聘iOS工程师,帮助他们开发下一代效率工具,旨在提升用户的日常生活效率与幸福感。 关于Narya.ai: 专注于AI应用层创新&a…

AI开发:生成式对抗网络入门 模型训练和图像生成 -Python 机器学习

阶段1:GAN是个啥? 生成式对抗网络(Generative Adversarial Networks, GAN),名字听着就有点“对抗”的意思,没错!它其实是两个神经网络互相斗智斗勇的游戏: 生成器(Gene…

039集——渐变色之:CAD中画彩虹()(CAD—C#二次开发入门)

(来左边儿 跟我一起画个龙,在你右边儿 画一道彩虹 ~~~~~~~~~~~ ) 效果如下: 以下展示部分颜色源码: namespace AcTools {public class Class1{public Wform.Timer timer;//定时器需建在类下面public s…

C++知识整理day3类与对象(下)——赋值运算符重载、取地址重载、列表初始化、友元、匿名对象、static

文章目录 1.赋值运算符重载1.1 运算符重载1.2 赋值运算符重载 2.取地址重载2.1 const成员函数2.2 取地址运算符重载 3.类与对象的补充3.1 再探构造函数---初始化列表3.2 类型转换3.3 static成员3.4 友元3.5 内部类3.6 匿名对象3.7 对象拷贝时的编译器优化 1.赋值运算符重载 赋…