使用Postman向Loqate Capture API发送SOAP请求失败如何解决?
正确调用Loqate Capture Interactive Find SOAP API的步骤
1. 先把请求方法和头部搞对
- 一定要用
POST方法,绝对不能用GET——用GET的话就会直接返回WSDL页面,就是你现在碰到的问题 - 必须加两个关键请求头:
Content-Type:设为text/xml; charset=utf-8SOAPAction:填http://www.addressy.com/Capture/Interactive/Find/v1.1/Find(这个值要和SOAP请求里的方法命名空间严格对应)
2. 构造正确的SOAP请求体
严格照着Loqate文档里的示例XML来写,别瞎改,重点注意这几点:
- 把示例里的
Key值换成你自己的有效API密钥(没有的话得先去Loqate申请) - 确保命名空间是
http://www.addressy.com/Capture/Interactive/Find/v1.1,别写错 - 给你个能用的模板:
<?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:v1="http://www.addressy.com/Capture/Interactive/Find/v1.1"> <soap:Body> <v1:Find> <v1:Key>你的API密钥</v1:Key> <v1:Text>London</v1:Text> <v1:Country>GB</v1:Country> </v1:Find> </soap:Body> </soap:Envelope>
3. Postman里的操作步骤
- 新建一个POST请求,把端点URL
https://api.addressy.com/Capture/Interactive/Find/v1.1/wsdlnew.ws填进去 - 切到
Body标签,选raw,然后下拉菜单选XML(别选成JSON或者其他) - 把上面的XML模板粘进去,替换掉密钥和搜索文本
- 切到
Headers标签,手动添加Content-Type和SOAPAction这两个头,值按前面说的填 - 点发送,这次应该能拿到正常的SOAP响应,而不是WSDL页面了
4. 常见坑排查
- 如果还是返回页面,先检查是不是不小心用了GET方法,或者
Content-Type设错了(比如写成application/xml,虽然有些API兼容,但SOAP标准要求用text/xml) - 确认你的API密钥是有效的,没过期、权限也够
- 检查XML里的标签拼写,比如参数名有没有写错,命名空间和文档里的一致不
内容的提问来源于stack exchange,提问作者AlwaysNeedingHelp
相关产品推荐
相关产品推荐

