我在将 C# 升级为 PHP 通信时遇到问题。我在这里阅读了许多旧帖子,之后我得出结论,我必须在服务器端使用 PHP SOAP Web 服务才能与 c# 进行交互。
这是我尝试过的代码://webservice.php
<?php
require_once 'lib/nusoap.php';
require_once 'notify.php';
$server=new nusoap_server();
$server->configureWSDL('webservice', 'urn:webservice');
$server->register('getMessage',array('msg'=>'xsd:string'),array('return'=>'xsd:null'));
$HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA)? $HTTP_RAW_POST_DATA : '';
$server->service($HTTP_RAW_POST_DATA);
?>
//notify.php,其中包含向 webservice 注册的函数
<?php
$message="temp";
function getMessage($msg)
{
$message=$msg;
}
?>
//member.php 获取消息并显示它。当我//单击按钮时,这将是我希望从 C# 代码获得的消息。
<?php
require_once 'notify.php';
echo $message;
?>
在 Visual Studio 2012 的第二部分中,我正确添加了 WSDL 文件的 Web 服务引用,并为按钮编写了以下代码。
//c#代码
private void button1_Click(object sender, EventArgs e)
{
localhost.webservice src = new localhost.webservice();
src.getMessage("Hello");
}
但是,当我单击按钮时,我看到 member.php 页面没有任何反应。?????????? 仍然显示“温度”。我希望每当我单击按钮时都应该显示这个“你好”。请问有什么帮助吗??我担心浪费了我整整一周的时间来学习这个,现在我的项目时间有限。我将非常感谢你。
问候,