如何在Postman中复刻MSC运单查询POST请求并获预期响应?
解决MSC运单查询Postman请求返回空字符串的问题
以下是几个必须检查和调整的关键点:
修正请求体格式
你当前的请求体写法不符合JSON规范,JSON要求键名必须用双引号包裹,正确的请求体应该是:{"trackingNumber": "asda", "trackingMode": "0"}同时在Postman的「Body」标签里选择
raw格式,并设置类型为JSON,确保请求头自动带上Content-Type: application/json。补全关键请求头
MSC的服务器会验证请求合法性,必须添加浏览器请求中携带的关键头信息,建议从浏览器开发者工具的Network面板复制完整请求头,至少要包含以下几项:User-Agent: 模拟浏览器标识,例如Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36Referer: 设置为https://www.msc.com/en/track-a-shipment?params=dHJhY2tpbmdOdW1iZXI9YXNkYSZ0cmFja2luZ01vZGU9MA%3D%3DOrigin: 设置为https://www.msc.comX-Requested-With: 设为XMLHttpRequest(标记为AJAX请求)- 必要时复制浏览器中的
Cookie值(即使未登录,部分网站需要会话Cookie才能返回正常响应)
确认请求URL正确性
你提供的是页面URL,而实际运单查询的API是另一个接口地址。打开浏览器开发者工具的Network面板,触发查询后找到对应的POST请求,复制它的真实URL到Postman中,不要直接使用页面URL。检查Postman其他设置
确保没有开启代理或拦截器导致请求被篡改;若开启了SSL验证,可暂时关闭测试(不建议长期关闭,仅用于排查问题)。
按照以上步骤调整后,重新发送请求应该就能得到预期的{"IsSuccess": false, "Data": "Container not found"}响应。
内容的提问来源于stack exchange,提问作者Simao
相关产品推荐
相关产品推荐

