在开发过程中,客户端通过soap方式获取服务器端数据资源,现在遇到一个一些问题:
1、当soapServer中数据库连接失败,客户端整体会导致超时,或500错误。
2、如何给soapServer增加密码,限制使用。soapServer code
soap.php
-----------------------------------<?
class TestServer
{ public function test($v)
{
mysql_connect('localhost', 'root','123');
mysql_select_db('test');
return $v;
}
}$server=new SoapServer(null,array('uri' => "test"));
$server->setClass("TestServer");
$server->handle();
?>
soapClient code
test.php
-----------------------------------try{
$soap = new SoapClient(null,array(
"location" => "http://localhost/soap.php",
"uri" => "test", //资源描述符服务器和客户端必须对应
"encoding" => "gbk",
"style" => SOAP_RPC,
"use" => SOAP_ENCODED
)); echo $soap->test('调试')."<br><br>";
}
catch(Exction $e){
echo '系统维护中,请稍后再来';
}
运行过程中,如果停止数据库服务或出现错误,test.php将超时或报500错误,导致整个页面失败,如何解决此类问题?
另外,如何给soap.php增加身份验证,限制使用?谢谢!phpsoap
1、当soapServer中数据库连接失败,客户端整体会导致超时,或500错误。
2、如何给soapServer增加密码,限制使用。soapServer code
soap.php
-----------------------------------<?
class TestServer
{ public function test($v)
{
mysql_connect('localhost', 'root','123');
mysql_select_db('test');
return $v;
}
}$server=new SoapServer(null,array('uri' => "test"));
$server->setClass("TestServer");
$server->handle();
?>
soapClient code
test.php
-----------------------------------try{
$soap = new SoapClient(null,array(
"location" => "http://localhost/soap.php",
"uri" => "test", //资源描述符服务器和客户端必须对应
"encoding" => "gbk",
"style" => SOAP_RPC,
"use" => SOAP_ENCODED
)); echo $soap->test('调试')."<br><br>";
}
catch(Exction $e){
echo '系统维护中,请稍后再来';
}
运行过程中,如果停止数据库服务或出现错误,test.php将超时或报500错误,导致整个页面失败,如何解决此类问题?
另外,如何给soap.php增加身份验证,限制使用?谢谢!phpsoap
解决方案 »
- PHP+MYSQL。 PHP如何判断 mysql的 select查询返回值是空的啊??
- 定义过的函数为何调用时说undefined
- 能搞定这个投票网站吗
- 有个北京的工作机会,对PHP+MySQL感兴趣的来看下吧
- php的SESSION 问题
- 在phpmyadmin中有这样一句
- 引号的问题:用SQL语句另外的一个包含引号的sql语句保存到数据库中的时候,sql中的引号怎样处理?
- 最新的php中一般缺省都带有zend,那是否可decode
- PHP能否判断一台机器是否连上互联网
- php基础,结果为什么时这样的? float(-3.0531133177192E-16)
- thinkphp怎么实现累计
- php 多条件 分页查询条件丢失 怎么解决啊? 跪求高手,网上找了几天了,自己实验了好久,就是弄不好哦.
如果你没有做错误处理,且没有打开错误显示功能,则会出现 500 错
也可以
ob_start();
$conn = mysql_connect('localhost', 'root','123');
$s = ob_get_clean();
if($s) echo '数据库连接错误 ' . strip_tags($s);