如何在Postman中用JavaScript重命名请求体里的二进制文件并执行请求?
Postman二进制文件请求重命名文件解决方案
你在Postman中使用二进制文件作为请求体,想要重命名文件后发送API请求,之前的代码报错是因为错误地将对象当作JSON字符串解析。
错误原因
pm.request.body.file本身就是一个JavaScript对象,并非JSON字符串。你用JSON.parse()去解析它时,对象会被转为[object Object]这个无效的JSON格式,因此触发JSONError。
解决代码
在Pre-request Script中使用以下代码即可实现重命名:
// 从环境变量获取用于重命名的objectId const objectIdToReplace = pm.environment.get("objectId"); // 获取当前请求的二进制文件对象 const fileObj = pm.request.body.file; // 示例:保留原文件后缀,将文件名替换为objectId const fileExtension = fileObj.fileName.split('.').pop(); fileObj.fileName = `${objectIdToReplace}.${fileExtension}`; // 将修改后的文件对象重新赋值给请求体 pm.request.body.file = fileObj;
如果不需要保留原后缀,直接指定新文件名即可:
fileObj.fileName = `${objectIdToReplace}.pdf`; // 替换为你需要的文件后缀
内容的提问来源于stack exchange,提问作者Sandeep
相关产品推荐
相关产品推荐

