Windows Phone 中的 nusoap 问题
Problems with nusoap in Windows Phone
我在使用 Nusoap 和 Windows Phone 时遇到问题,希望您能帮助我。
但首先让我解释一下我做了什么:
首先我创建了一个网络服务
<?php
require_once('./lib_095/nusoap.php');
$server = new soap_server();
$server->configureWSDL('test_wsdl', 'urn:test_wsdl');
$server->wsdl->schemaTargetNamespace = 'urn:test_wsdl';
$server->register('test', // method name
array('var' => 'xsd:string'), // input parameters
array('return' => 'xsd:string'), // output parameters
'urn:test_wsdl', // namespace
'urn:test_wsdl#test', // soapaction
'rpc', // style
'literal', // use
'Test-Methode des Webservices' // documentation
);
function test($var)
{
return "test fine: $var";
}
// Use the request to (try to) invoke the service
$HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : '';
$server->service($HTTP_RAW_POST_DATA);
?>
对于我的第一次测试,我在 visual studio 2013 年编写了一个控制台应用程序:
ServiceReference1.test_servicePortTypeClient c = new ServiceReference1.test_servicePortTypeClient();
string check = "Milburn";
var result = c.test("Hallo");
Console.WriteLine(result);
这个小程序工作正常。
所以我想我可以将经验转移到 Windows Phone - 为此使用相同的代码。但这没有用。我什至试过这段代码:
ServiceReference1.test_servicePortTypeClient c = new ServiceReference1.test_servicePortTypeClient();
string check = "Milburn";
var result = c.testAsync(check);
System.Diagnostics.Debug.WriteLine("Hallo"+result);
结果程序返回了一个任务。那么我该怎么做才能得到一个字符串呢?
谢谢你的帮助
生成的服务在 Windows Phone 上使用异步方法(您的测试更改为 testAsync)因此您需要等待它们
var result = await c.testAsync(check);
我在使用 Nusoap 和 Windows Phone 时遇到问题,希望您能帮助我。 但首先让我解释一下我做了什么:
首先我创建了一个网络服务
<?php
require_once('./lib_095/nusoap.php');
$server = new soap_server();
$server->configureWSDL('test_wsdl', 'urn:test_wsdl');
$server->wsdl->schemaTargetNamespace = 'urn:test_wsdl';
$server->register('test', // method name
array('var' => 'xsd:string'), // input parameters
array('return' => 'xsd:string'), // output parameters
'urn:test_wsdl', // namespace
'urn:test_wsdl#test', // soapaction
'rpc', // style
'literal', // use
'Test-Methode des Webservices' // documentation
);
function test($var)
{
return "test fine: $var";
}
// Use the request to (try to) invoke the service
$HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : '';
$server->service($HTTP_RAW_POST_DATA);
?>
对于我的第一次测试,我在 visual studio 2013 年编写了一个控制台应用程序:
ServiceReference1.test_servicePortTypeClient c = new ServiceReference1.test_servicePortTypeClient();
string check = "Milburn";
var result = c.test("Hallo");
Console.WriteLine(result);
这个小程序工作正常。 所以我想我可以将经验转移到 Windows Phone - 为此使用相同的代码。但这没有用。我什至试过这段代码:
ServiceReference1.test_servicePortTypeClient c = new ServiceReference1.test_servicePortTypeClient();
string check = "Milburn";
var result = c.testAsync(check);
System.Diagnostics.Debug.WriteLine("Hallo"+result);
结果程序返回了一个任务。那么我该怎么做才能得到一个字符串呢?
谢谢你的帮助
生成的服务在 Windows Phone 上使用异步方法(您的测试更改为 testAsync)因此您需要等待它们
var result = await c.testAsync(check);