Power Query调用POST接口返回400 Bad Request问题求助
Power Query M POST请求返回400 Bad Request问题排查与解决
你的Power Query代码返回400错误,核心原因大概率是请求格式和Postman发送的不一致,以下是具体排查和修复方案:
常见问题点及修复步骤
1. 缺失Content-Type请求头
Postman发送JSON请求时会自动添加Content-Type: application/json头,但Power Query默认不会主动添加,很多API会因为无法识别请求体格式返回400错误。
2. 参数类型不匹配
如果Postman中你发送的是数字类型的参数(而非字符串),但Power Query代码里用了引号包裹成字符串,会导致API解析失败。
修改后的示例代码
let // 根据API要求调整参数类型:如果是数字就去掉引号,字符串则保留 body = [COD_INT= 886000, COD_INT_CSO= 0], Parsed_JSON = Json.FromValue(body), Source = Web.Contents("https://apixxxxxxx.yyyyyyyyy.com.br/api/CursosConcluidos", [ Headers= [ #"User-Token" = "673E9CAF-xxxxxxxxxxx-xxx-xx-968", // 新增Content-Type头,明确请求体为JSON格式 #"Content-Type" = "application/json" ], Content = Parsed_JSON ] ), final = Json.Document(Source) in final
进一步排查方案
如果修改后还是报错,建议抓包对比请求差异:
- 用Fiddler或Charles工具捕获Power Query发送的请求
- 和Postman的请求做逐字段对比,重点看:
- 请求头的所有字段是否一致(包括大小写、空格)
- 请求体的JSON结构、参数类型是否完全匹配
- URL是否存在编码差异
内容的提问来源于stack exchange,提问作者GuyRD5
相关产品推荐
相关产品推荐

