1

不是真正的 PHP 开发人员,但我有 PHP 托管并想在其上创建一个 PHP Web 服务以供 .NET 客户端使用,我正在考虑将 WSDL 与 NUSoap 一起使用。

或者

一个更现代的解决方案是使用 OData,我不确定它是否会更容易。哪一个会更容易?

4

3 回答 3

4

对于您的 c# 开发人员来说,最简单的方法是使用 WSDL 开发一个肥皂服务。在 php 中创建服务会很痛苦。

更好的选择是创建一个使用 JSON 进行通信的 REST Web 服务。在客户端需要更多的代码,但在其他平台上会更容易使用,并且可以快速在 php 中开发。

这是一个非常简单的 php 中的 REST-JSON Web 服务器的示例。

function finder($person)
{
     $data = array();

     $data['sue']['full_name'] = 'Sue Thompson';
     $data['sue']['location']['city'] = 'San Francisco';
     $data['sue']['location']['state'] = 'California';

     $data['jack']['full_name'] = 'Jack Black';
     $data['jack']['location']['city'] = 'San Anselmo';
     $data['jack']['location']['state'] = 'California'; 

    if (!isset($data[$person))
    {
        return $data[$person];
    }
    else
    {
        // make sure you document this
        return array('error' => "An error has occured");
    }
}

// you can take parameters as url query strings or as json.
// if your input is simple, query strings are easier. 
$person = $_GET['person'];

echo json_encode(finder($person));
于 2011-01-11T19:41:59.397 回答
2

看在上帝的份上,请不要使用 SOAP。这是可怕的和可怕的。

使用 REST(或至少 GET 和 POST)和 JSON。容易多了。

请参阅Web 服务的 SOAP 或 REST?

更新:我最初反对 XML,但它有它的位置。不过 JSON 更好(不那么冗长)。

于 2011-01-11T20:07:59.550 回答
0

在这个网站上有很好的解释:http ://wso2.org/library/3393

于 2013-03-26T03:43:39.823 回答