admin管理员组

文章数量:1122850

linux yundun进程,GitHub

YUNDUN API PHP SDK legend

接口遵循RESTful,默认请求体json,接口默认返回json

app_id, app_secret 联系技术客服,先注册一个云盾的账号,用于申请绑定api身份

签名

每次请求都签名,保证传输过程数据不被篡改

客户端:sha256签名算法,将参数base64编码+app_secret用sha256签名,每次请求带上签名

服务端:拿到参数用相同的算法签名,对比签名是否正确

环境要求:php >=5.5

依赖composer

##使用步骤

composer require yundun/yundunsdk

实例化

//sdk

require 'xx/vendor/autoload.php';

$app_id = 'xx';

$app_secret = 'xx';

$client_ip = 'xx';

$client_userAgent = '';

$base_api_url = '/';

;base_api_url = 'http://127.0.0.1/V4/'

$host = 'apiv4.yundun';

$handler = 'guzzle'; //curl/guzzle默认guzzle,guzzle支持异步调用,curl驱动目前未实现异步

$sdk = new YundunSDK (

[

'app_id'=>$app_id,

'app_secret'=>$app_secret,

'base_api_url' = 'http://127.0.0.1/V4/',

'host' => 'apiv4.xx',

'client_ip'=>$client_ip,

'client_userAgent'=>$client_userAgent,

'handler'=> $handler,

'syncExceptionOutputCode' => 0,

'syncExceptionOutputMessage' =>'同步请求异常信息提示',

'asyncExceptionOutputCode' => 0,

'asyncExceptionOutputMessage' => '异步请求异常信息提示'

'log' => true, //是否记录sdk相关日志

'logfileWin' => 'E:/sdkV4.log', //windows日志路径

'logfileLinux' => '/tmp/sdkV4.log' //linux日志路径

]

);

调用

format json返回json,xml返回xml

body 支持传递json和数组

urlParams会拼接在url后面

支持get/post/patch/put/delete方法

sync request

get

$request = array(

'url' => 'api/version',

'body' => '',

'headers' => [

'format' => 'json',

],

'timeout' => 10,

'query' => [

'params1' => 1,

'params2' => 2

],

);

try{

$res = $sdk->get($request);

}catch (\Exception $e){

var_dump($e->getCode());

var_dump($e->getMessage());

}

exit($res);

post/put/patch/delete

$request = array(

'url' => 'api/version',

'body' => json_encode([

'body1' => 1,

'body2' => 2,

]),

'headers' => [

'format' => 'json',

],

'timeout' => 10,

'query' => [

'params1' => 1,

'params2' => 2

],

);

try{

$res = $sdk->post($request);

}catch (\Exception $e){

var_dump($e->getCode());

var_dump($e->getMessage());

}

exit($res);

async request

get

$request = array(

'url' => 'api/version',

'body' => '',

'headers' => [

'format' => 'json',

],

'timeout' => 10,

'query' => [

'params1' => 1,

'params2' => 2

],

'options' => [

'async' => true,

'callback' => function($response){

$body = $response->getBody->getContents();

echo $body;

exit;

},

'exception' => function($exception){}

]

);

try{

$sdk->getAsync($request);

}catch (\Exception $e){

var_dump($e->getCode());

var_dump($e->getMessage());

}

post/put/patch/delete

$request = array(

'url' => 'api/version',

'body' => json_encode([

'body1' => 1,

'body2' => 2,

]),

'headers' => [

'format' => 'json',

],

'timeout' => 10,

'query' => [

'params1' => 1,

'params2' => 2

],

'options' => [

'async' => true,

'callback' => function($response){

$body = $response->getBody->getContents();

echo $body;

exit;

},

'exception' => function($exception){}

]

);

try{

$sdk->postAsync($request);

}catch (\Exception $e){

var_dump($e->getCode());

var_dump($e->getMessage());

}

本文标签: linux yundun进程GitHub