首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用jQuery调用PHP SoapServer函数

用jQuery调用PHP SoapServer函数
EN

Stack Overflow用户
提问于 2012-09-08 03:01:50
回答 1查看 728关注 0票数 0

我正在尝试使用PHP5.2的SoapServer功能。我设置了soapserv.php,如下所示。但是我不知道如何用PHP以外的语言(没有WSDL)来调用'add‘函数。我想用AJAX (jQuery)调用它。任何帮助都将不胜感激!

代码语言:javascript
复制
<?php
    function add($a, $b) {
      return $a + $b;
    }

  $soap = new SoapServer(
    null,
    array('uri' => 'http://example.com/projects/php/soapserv/')
  );
  $soap->addFunction("add");
  $soap->handle();
?>

我的JavaScript看起来像这样(虽然尝试了几种方式)。

代码语言:javascript
复制
var req = $.post("http://example.com/projects/php/soapserv", {"add":{a: 1, b: 2}});

            req.done(function(msg){
                document.write(msg.responseText);
            });

            req.fail(function(msg){
                document.write(msg.responseText);
            });
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-09-08 04:38:34

明白了..。只需将post数据更改为soap信封!

代码语言:javascript
复制
        var request = "<?xml version=\"1.0\"?>\n";
        request += "<soap:Envelope xmlns:soap=\"http://www.w3.org/2003/05/soap-envelope\">\n";
        request += "<soap:Body xmlns:m=\"http://example.com/projects/php/soapserv\">\n";
        request += "<m:add>\n";
        request += "<m:a>1</m:a>\n";
        request += "<m:b>2</m:b>\n";
        request += "</m:add>\n";
        request += "</soap:Body>\n";
        request += "</soap:Envelope>";

        var req = $.ajax({
           type: "POST",
           url: "http://example.com/projects/php/soapserv",
           data: request,
           cache: false
        });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12323945

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档