带唯一标识的Excel文件上传请求报Bad Request,求助构建正确请求
修复GraphQL文件上传Bad Request问题的方案
问题根源
当前请求存在两处致命不匹配:
map中的路径variables.fileTemplate.File.0与operations里的变量名Template不对应,导致文件无法正确绑定到变量。- 虽
Template下的File字段用[null]占位符合规范,但映射路径错误导致后端无法识别文件位置。
正确的请求配置
1. 修正后的operations内容
变量部分无需修改,确保字段结构正确即可:
{"operationName":"uploadFile","variables":{"Template":{"fileName":"puneet19Dec2022.xlsx","File":[null],"upfeId":"3EIBAA2","fileYear":2025,"accountId":"RMhn9AAD","subAccountId":"RcEIzAAN"}},"query":"mutation uploadFile($Template: TemplateInput) {\n uploadFile(Template: $Template) {\n responseCode\n responseMessage\n data {\n list {\n name\n notes\n type\n startDate\n dueDate\n owners {\n emailId\n firstName\n __typename\n }\n attachmentName\n phase\n rowError\n __typename\n }\n hasError\n majorErrors\n __typename\n }\n __typename\n }\n}"}
2. 修正后的map内容
将映射路径调整为匹配变量名Template:
{"1":["variables.Template.File.0"]}
3. 文件绑定要求
1对应的部分必须是实际的Excel二进制文件。- 请求的
Content-Type必须设置为multipart/form-data,且文件部分的Content-Disposition需标记为name="1"; filename="puneet19Dec2022.xlsx"。
额外验证项
- 确认后端定义的
TemplateInput类型中,File字段为Upload类型(GraphQL文件上传标准类型)。 - 检查Auth Token格式是否正确(如
Bearer <token>),且该token拥有文件上传权限。 - 验证Excel文件格式、扩展名符合后端要求,无损坏。
内容的提问来源于stack exchange,提问作者Puneet Kumar
相关产品推荐
相关产品推荐

