1

我正在尝试使用 Javascript 和简单的 PHP 代理从 SOAP API 获取数据。当我去测试站点并手动插入参数时,我得到了正确的响应。但是,当我使用以下脚本时,我只是获取了默认测试页面的 html,没有来自 API 的实际数据。

$.ajax({
    url: 'proxy.php',
    data: {requrl: 'http://rc.api.sitexdata.com/sitexapi/sitexapi.asmx?op=AddressSearch&' + $.param(requestData) },
})
.done(function(data) {
    console.log(data);
});

代理.php

<?php
$file = file_get_contents($_GET['requrl']);
echo $file;
?>
4

1 回答 1

1

我真的没有在您的代码中看到与 SOAP 有任何关系的任何内容。您将 URL 传递给获取远程文件的文件内容的 php 端点。那不是肥皂。

撇开技术不谈,通过浏览器访问 proxy.php 会产生与 ajax 调用产生的结果不同的结果吗?如果没有,我会仔细检查您关于 SOAP 调用的文档,以确保您正确地进行了调用。如果问题仅在您使用 ajax 时出现,您可能只是缺少 dataType 和 contentType 设置。

这个链接可能有用。 JQuery AJAX 使用 SOAP Web 服务

于 2013-08-30T03:53:21.330 回答