W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
將框架目錄下的 ./SDK/PHP/PhalApiClient 目錄中的全部代碼拷貝到項(xiàng)目里面即可使用。
如下是使用的代碼場(chǎng)景片段。
首先,我們需要導(dǎo)入SDK包:
<?php
require_once dirname(__FILE__) . '/PhalApiClient.php';
$client = PhalApiClient::create()
->withHost('http://demo.phalapi.net/');
$rs = $client->reset()
->withService('Default.Index')
->withParams('username', 'dogstar')
->withTimeout(3000)
->request();
var_dump($rs->getRet());
echo "\n";
var_dump($rs->getData());
echo "\n";
var_dump($rs->getMsg());
運(yùn)行后,可以看到:
int(200)
array(4) {
["title"]=>
string(12) "Hello World!"
["content"]=>
string(36) "dogstar您好,歡迎使用PhalApi!"
["version"]=>
string(5) "1.2.1"
["time"]=>
int(1444925238)
}
string(0) ""
當(dāng)需要重復(fù)調(diào)用時(shí),需要先進(jìn)行 重置操作 ,如:
//one more time
$rs = $client->reset()
->withService("User.GetBaseInfo")
->withParams("user_id", "1")
->request();
var_dump($rs->getRet());
echo "\n";
var_dump($rs->getData());
echo "\n";
var_dump($rs->getMsg());
當(dāng)請(qǐng)求有異常時(shí),返回的 ret!= 200,如:
//illegal request
$rs = $client->reset()
->withService("XXX.XXXXX")
->withParams("user_id", "1")
->request();
var_dump($rs->getRet());
echo "\n";
var_dump($rs->getData());
echo "\n";
var_dump($rs->getMsg());
以上的輸出為:
--------------------
int(200)
array(3) {
["code"]=>
int(0)
["msg"]=>
string(0) ""
["info"]=>
array(3) {
["id"]=>
string(1) "1"
["name"]=>
string(7) "dogstar"
["from"]=>
string(7) "oschina"
}
}
string(0) ""
--------------------
int(400)
array(0) {
}
string(45) "非法請(qǐng)求:接口服務(wù)XXX.XXXXX不存在"
當(dāng)服務(wù)端接口需要接口簽名驗(yàn)證,或者接口參數(shù)加密傳送,或者壓縮傳送時(shí),可以實(shí)現(xiàn)此過濾器,以便和服務(wù)端操持一致。
當(dāng)需要擴(kuò)展時(shí),分兩步。首先,需要實(shí)現(xiàn)過濾器接口:
<?php
class MyFilter implements PhalApiClientFilter {
public function filter($service, array &$params) {
//TODO ...
}
}
然后設(shè)置過濾器:
<?php
$rs = PhalApiClient.create()
.withHost("http://demo.phalapi.net/")
.withFilter(new MyFilter())
// ...
.request();
當(dāng)返回的接口結(jié)果不是JSON格式時(shí),可以重新實(shí)現(xiàn)此接口。
當(dāng)需要擴(kuò)展時(shí),同樣分兩步。類似過濾器擴(kuò)展,這里不再贅述。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: