Objective-C:使用php webservice为Iphone发送/接收SOAP

时间:2013-11-20 15:28:42

标签: php objective-c post soap

我几天前开始用Objective-C编程,所以我是初学者,也从未做过网络服务。 所以我在一些教程的帮助下用php创建了一个web服务。 php文件如下所示:

<?php
function name($a){
$db = "app";
$verbindung = mysql_connect("localhost", "******", "******");
mysql_select_db($db);
$zeile = mysql_fetch_array(mysql_query("SELECT * FROM player Where Player_ID like $a"));
mysql_close();
return $zeile[1];           
}
$server=new SoapServer("profil.wsdl");
$server->addFunction("name");
$server->handle();

?>

我还有一个wsdl文件。

当我在这里测试我的网络服务时:http://www.soapclient.com/soaptest.html 我收到以下回复:

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:profil" xmlns:xsd="http://www.w3.org/2001/XMLSchema"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-  ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP- ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:nameResponse>
<Result xsi:type="xsd:string">Test123</Result>
</ns1:nameResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

结果Test123正是我想要作为一个String进入我的Objective-C程序,但我不知道该怎么做。我已经检查了很多教程,但我没有得到它。我只需要发布1个int值并获取我的字符串:“test123”返回。

我希望有人可以帮助我,那会很棒。

1 个答案:

答案 0 :(得分:0)

SOAP中的iOS服务进行通信没有开箱即用的方式。实际上不建议这样做。您可以尝试wsdl2objc库,但我不建议您使用SOAP服务。使您的服务与JSON一起使用,您就可以轻松地对其进行序列化/反序列化。