使用 Javascript 与 SOAP API 对话

Posted

技术标签:

【中文标题】使用 Javascript 与 SOAP API 对话【英文标题】:Talking to SOAP API with Javascript 【发布时间】:2013-09-02 15:54:06 【问题描述】:

我正在尝试使用 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);
);

proxy.php

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

【问题讨论】:

PHP 有 SOAP 库。您可能想使用它。 【参考方案1】:

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

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

此链接可能有用。 JQuery AJAX Consume SOAP Web Service

【讨论】:

以上是关于使用 Javascript 与 SOAP API 对话的主要内容,如果未能解决你的问题,请参考以下文章

将 SOAP 与 Ruby 结合使用的最佳方式是啥?

Workday SOAP API:如何进行身份验证

如何将Boondmanager ERP的PHP中的SOAP API与Talend连接起来

使用新 oAuth 1.0 的 Google Ads API、C#、SOAP 请求?

Five9 的 API:如何使用 SOAP API 和基本身份验证提取报告

API 网关可以指向 Web 服务 (SOAP),还是可以在微服务中使用 SOAP,以便 API 网关指向它?