php soap带验证

飘逸的风14年前 (2012-11-17)程序6931

Server端

<?php

class Server {

private $authenticated = false;

 

public function auth($authcode) {

if($authcode === '123456789') {

$this->authenticated = true;

return true;

} else {

throw new SoapFault('403', '403 Forbidden');

}

}

 

public function getData() {

if(!$this->authenticated) {

throw new SoapFault('403', '403 Forbidden');

}

$data = array(

'text' => 'ni mei a'

);

return json_encode($data);

}

}

 

/*//生成wsdl文件

include("SoapDiscovery.class.php");

 

$disco = new SoapDiscovery('Server','Server');

 

$handle = fopen('server.wsdl', 'w+');

fwrite($handle, $disco->getWSDL());

fclose($handle);

*/

 

 

$objSoapServer = new SoapServer("server.wsdl");

// $objSoapServer->setClass("Server");

$serv = new Server;

$objSoapServer->setObject($serv);

$objSoapServer->handle();

?>

 

Client端

 

<?php

try {

$client = new SoapClient('server.wsdl',array("exceptions" => 1));

 

$authvalues = new SoapVar(array('authcode' => '123456789',), SOAP_ENC_OBJECT);

 

$header = new SoapHeader('urn:Server', 'auth', $authvalues, false, SOAP_ACTOR_NEXT);

 

$client->__setSoapHeaders(array($header));

$data = $client->getData();

 

var_dump($data);

} catch (SoapFault $e) {

echo $e->faultstring;

?>

来源:https://type.so/php/php-auth-soap.html

相关文章

新浪微博API开发简介之PHP基础篇-用户授权

现在玩微博的人越来越多了,而关于微博的第三方应用开发也越来越多,自己在偶然间开始接触了新浪微博API开发,新浪微博API开发的资源比较多,新浪微博提供了一个开发者的平台,网址是:https://ope...

分享一个生成sitemap.xml的类

很多站长在做seo优化的时候都会向各大搜索引擎网站提交站点地图sitemap.xml,同样需要提交。于是专门写了一个生成sitemap.xml的类,支持生成在制定目录下,默认生成在网站根目录下。 分...

PHP常用正则表达式汇总

1.    平时做网站经常要用正则表达式,下面是一些讲解和例子,仅供大家参考和修改使用: 2.    &quo...

Javascript 正则表达式使用手册

一.正则表达式匹配常用语法 “+”字符:规定表达式字符出现一次或多次。 “*”字符:规定表达式字符出现零次或多次。 “?”字符:规定表达式字符出现零次或一次。 ^ 匹配的是字符的开头 ,匹配的...

emlog SyntaxHighlighter 代码高亮插件[提供下载,更新至1.2]

emlog SyntaxHighlighter 代码高亮插件[提供下载,更新至1.2]

emlog SyntaxHighlighter 代码高亮插件,可以把代码贴在代码框中,确定后自动生成高亮代码。 注:本插件已升级,修复在代码很长换行的时候左边的行数不增加问题;插入代码里有HTML标...

ECShop设置模板的原理以及一些模板设置函数说明(个人观点)

ECShop设置模板的原理以及一些模板设置函数说明(个人观点) admin/includes/lib_template.php 一些函数及变量说明 $template_files...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。