Ⅰ php怎麼調用java的https方式的webservice介面
webservice 發展了好久了,有好多種客戶端部署調用方式 ,流程大致是先創建服務,再調用。
下面的代碼是創建一個簡單的Webservice服務.
server.php
<?php
require_once "lib/nusoap.php";
function webserver() {
return "This is a Webservice Server";
}
$soap = new soap_server;
$soap->register('webserver');
$soap->service($HTTP_RAW_POST_DATA);
?>
上面的代碼就創建了一個Webservice服務程序,接下來創建調用Webservice介面的程序:
<?php
require_once "soap/lib/nusoap.php";
$web_url = "127.0.0.1";
$client = new soapclient($web_url."/server.php");
$param = array();
$ret = $client->call('webserver', $param, $web_url, $web_url);
echo $ret;
?>
基本上流程就是這樣,當然,實際應用上能寫出很復雜的東西,這個你可以找找相關資料學習一下,上面的php調用Webservice程序是通用的,適合於PHP調用其它ASP.NET及Java等各類語言的Webservice介面。一些技術博文里有很詳細的介紹和學習。
Ⅱ php 調用webservice介面數據
函數是不可以調用的
你把這個xml當成字元串,然後在用php xml處理一下就可以使用了
Ⅲ ThinkPHP如何調用WebService的,需要什麼樣的類,誰能給個詳細的代碼謝謝
可以用import函數.例如, 你可以把phpMailer.class.php放在 ThinkPHP/Library/Org/Util/文件夾下.
要用的時候,
import('Org.Util.phpMailer');
Ⅳ php調用webservice介面,求大神可以解決
$client = new SoapClient ($this->webServiceUrl);
$client->soap_defencoding = 'utf-8';
$client->xml_encoding = 'utf-8';
$param = array('arg0'=>$context);//參數拼接xml字元串
$result = $client->managementMemberInfo($param);//返回值
Ⅳ PHP如何調用webservice,知道的高手進
SOAP的WebService是可以直接使用的,php有支持SoapClient的,用起來很容易
<?php
$wsdl = "http://192.168.1.2/jaxws/services/test?wsdl";
$client = new SoapClient($wsdl);
$param = array('arg0'=>'arg0','arg1'=>'arg1');
$ret = $client->getUserinfoByID($param);
if ($ret->return){
print_r($ret->return);
}else{
echo 'no user';
}
具體SoapClient需要php的soap支持,看phpinfo里有soap的話就可以了,比如這樣:
soap
Soap Client enabled
Soap Server enabled
Directive Local Value Master Value
soap.wsdl_cache 1 1
soap.wsdl_cache_dir /tmp /tmp
soap.wsdl_cache_enabled 1 1
soap.wsdl_cache_limit 5 5
soap.wsdl_cache_ttl 86400 86400
Ⅵ PHP調用.NET的WebService 簡單實例
創建一個C#的web
service,這個就不多說了,我用vs2008的wizard創建了一個最簡單的,讓它運行在:http://localhost/webservice1/service1.asmx
其中有個web
method像這樣的:
復制代碼
代碼如下:
[WebMethod]
public
string
HelloWorld()
{
return
"Hello
World";
}
ok,一切就緒。在某php文件中如下寫法:
php5本身就支持SOAP調用Web
Service:
<?php
//get
localization
strings
from
C#
webservice
$client
=
new
SoapClient('http://localhost/webservice1/Localization.asmx?wsdl');
echo
"Call
web
service
method
from
C#
WebService:\n";
$result
=
$client->GetLocalizationResource();
if(!is_soap_fault($result))
{
echo
"return:\n",
$result->GetLocalizationResourceResult;
}
else
{
echo
"soap
call
fault";
}
?>
這樣就OK了,會繼續介紹SOAP
以上所述就是本文的全部內容了,希望大家能夠喜歡。
請您花一點時間將文章分享給您的朋友或者留下評論。我們將會由衷感謝您的支持!
Ⅶ PHP webservice介面怎麼用
這就是個遠程xml文件
可以這樣讀 我試過了可以讀
$xml_string=file_get_contents('http://ceshi.cardplus.cn/wx.rest/service/dict/instry');
$xml_string=trim($xml_string);
$xml_object=simplexml_load_string($xml_string);
$xml_arr=get_object_vars($xml_object);
echo$xml_arr
Ⅷ php怎樣通過SoapClient調用webservice介面
首先要先配置;extension=php_soap.dll我們打開php.ini
php怎樣通過SoapClient調用webservice介面
我們打開一個webservice的例子
php怎樣通過SoapClient調用webservice介面
怎樣看這個xml的文件呢,如下圖
php怎樣通過SoapClient調用webservice介面
下面我們開始寫代碼,先實例化SoapClient
php怎樣通過SoapClient調用webservice介面
使用介面方法,get_object_vars得到的是指定的對象中定義的屬性組成的關聯數組
php怎樣通過SoapClient調用webservice介面
6
最後運行一下測試一下
php怎樣通過SoapClient調用webservice介面
Ⅸ php 如何寫一個webservice ecshop的一個登錄介面,第一次寫,希望講的祥細點,能給貼上源碼更加感謝。
可以根據這個改啊!!
1:首先我們必須配置好qq聯合登陸的配置文件。還有公共函數,我們將他放到ecshop的qq目錄下面。
include_once(ROOT_PATH . 'qq/comm/config.php');
include_once(ROOT_PATH . 'qq/comm/utils.php');
include_once(ROOT_PATH . 'qq/oauth/get_request_token.php');
其次我們要驗證下簽名的合法性。
if (!is_valid_openid($_REQUEST["openid"], $_REQUEST["timestamp"], $_REQUEST["oauth_signature"]))
{
//demo對錯誤簡單處理
echo "###invalid openid\n";
echo "sig:".$_REQUEST["oauth_signature"]."\n";
exit;
}
2:獲取ecshop聯合登陸qq的授權信息
$access_str = get_access_token($_SESSION["appid"], $_SESSION["appkey"], $_REQUEST["oauth_token"], $_SESSION["secret"], $_REQUEST["oauth_vericode"]);
//echo "access_str:$access_str\n";
$result = array();
parse_str($access_str, $result);
3:我們通過處理,得到qq聯合登陸返回的數據進行json還原
$info = get_qq_user_info($_SESSION["appid"], $_SESSION["appkey"], $_SESSION["token"], $_SESSION["secret"], $_SESSION["openid"]);
4:分解參數,然後通過以下函數,完成qq聯合登陸的ecshop注冊和登陸
if(register($qqname, $qqname, $email, array()))
if($user->login($qqname, $qqname,isset($_POST['remember'])))
可以根據這個改啊!!
Ⅹ php 中 webservice 是如何使用的 調用別人的介面 參數是如何傳遞的
php調用web service還是非常簡單的。下面用一個例子說明:
web service服務是查詢QQ用戶是否在線
使用php5開發客戶端:
<?php
try {
//$client = new SoapClient("HelloService.wsdl",array('encoding'=>'UTF-8'));
$client = new SoapClient("webservices/qqOnlineWebService.asmx?wsdl");
var_mp($client->__getFunctions());
print("");
var_mp($client->__getTypes());
print("");
class qqCheckOnline{
var $qqCode = "10000";
};
$arrPara = array(new qqCheckOnline);
$arrResult = $client->__Call("qqCheckOnline",$arrPara);//$client->qqCheckOnline($arrPara);
echo $arrResult->qqCheckOnlineResult . "";
} catch (SOAPFault $e) {
print $e;
}
?>
代碼確實很簡單吧,創建SoapClient對象時,可以使用保存在本地WSDL文件,也可以使用遠程的地址,後面的array數組里可以帶上很多的參數,具體參數可以查php的SoapClient幫助,這里帶的是字元集編碼,如果調用方法的參數里有中文,一定要指定字元集編碼,否則會出錯。
調
用web service前可以先調用SoapClient的__geunctions()和__getTypes()方法看一下你要調用的
web service暴露的方法,參數和數據類型,需要注意的是傳入的參數名一定要和soapclient裡面定義的一致,否則參數是傳不過去的。
需要使用SoapClient的__soapCall()或__call()方法,具體使用方法可以查php的幫助文檔。如果參數要求是一個結構體,請用類代替,如上面的代碼。
另外發現個問題,如果web service方法返回的是xml格式的字元串,php接收到以後會自己把數據內容解析出來,而不是xml字元串.