<?php

$uid = 28;
$vhost = 'asdfw'; $token = getToken($uid, $vhost);
print_r($token);
//获取token
function getToken($uid, $vhost){
$skey = 'wEBxca5X9NArc5Hq';
$time = time();
$vdata = array(
'uid'=>$uid,
't'=>$time,
'skey'=>$skey,
'sign'=>md5(md5($uid.$skey).$time),
'vhost'=>$vhost
); $url = 'http://192.168.1.210/api2/site/index.php/token'; //sfvft3jdsutl7sebsa0d95padn
return curlCall($url, $vdata)['token'];
} // $domainlist = getDomainList($uid, $vhost, $token);
// print_r($domainlist);
//获取域名列表
function getDomainList($uid, $vhost, $token){
$vdata = array(
'uid' => $uid,
'vhost'=>$vhost,
'token'=>trim($token)
); $url = 'http://192.168.1.210/api2/site/index.php/domain/list';
return curlCall($url, $vdata);
} // $domainlist = addNewDomain($uid, $vhost, $token, 'test.com', '4.3.2.1');
// print_r($domainlist);
//添加新域名
function addNewDomain($uid, $vhost, $token, $domain, $host){
$vdata = array(
'uid' => $uid,
'vhost'=>$vhost,
'token'=>trim($token),
'domain'=>$domain,
'host'=>$host
); $url = 'http://192.168.1.210/api2/site/index.php/domain';
return curlCall($url, $vdata);
} // $ret = delDomainById($uid, $vhost, $token,1);
// print_r($ret);
//删除域名
function delDomainById($uid, $vhost, $token, $id){
$vdata = array(
'uid' => $uid,
'vhost'=>$vhost,
'token'=>trim($token)
);
$url = 'http://192.168.1.210/api2/site/index.php/domain/'.$id;
return curlCall($url, $vdata, "DELETE");
} // $ret = editDomain($uid, $vhost, $token, "b.com", "3.3.3.3");
// print_r($ret);
//修改域名
function editDomain($uid, $vhost, $token, $domain, $host){
$vdata = array(
'uid' => $uid,
'vhost'=>$vhost,
'token'=>trim($token),
'domain'=>$domain,
'host'=>$host
);
$url = 'http://192.168.1.210/api2/site/index.php/domain/2';
return curlCall($url, $vdata, "PUT");
} $value = '[{"id":1,"or":1,"revers":1,"name":"url","value":{"url":"asdfww"}},{"id":2,"or":1,"revers":1,"name":"meth","value":{"val":"DELETE"}}]';
$ret = addAdvance($uid, $vhost, $token, $host, 1, 0, $value);
print_r($ret);
//添加高级设置
function addAdvance($uid, $vhost, $token, $host, $id, $jump_type, $value){
$vdata = array(
'uid' => $uid,
'vhost'=>$vhost,
'token'=>trim($token),
'host'=>$host,
'id'=>$id,
'jump_type'=>$jump_type,
'value'=>$value
);
$url = 'http://192.168.1.210/api2/site/index.php/firewall/advanced';
return curlCall($url, $vdata, "post");
} function curlCall(String $url, array $vdata, String $method="post"){
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
$param = array();
foreach ($vdata as $key=>$val) {
$arr = array_push($param, $key."=".$val);
}
$param = join("&",$param);//拼接后的参数原始字符串示例:uid=28&vhost=asdfw&token=o9b1fuccgurb7l6m5benjopase&domain=b.com&host=2.2.2.2
switch(strtolower($method)) {
case 'get':
curl_setopt($ch, CURLOPT_POSTFIELDS, $param); //设置请求体,提交数据包
break;
case 'post':
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $param); //设置请求体,提交数据包
break;
case 'put':
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($ch, CURLOPT_POSTFIELDS, $param); //设置请求体,提交数据包
break;
case 'delete':
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'DELETE');
curl_setopt($ch, CURLOPT_POSTFIELDS, $param); //设置请求体,提交数据包
break;
}
curl_setopt($ch,CURLOPT_HEADER,0);
$output = curl_exec($ch);
if($output === FALSE ){
echo "CURL Error:".curl_error($ch);
}
curl_close($ch);
return json_decode($output, true);
}

cdnbest获取,删除,增加,修改域名列表,高级设置api示例的更多相关文章

  1. 原生js删除增加修改class属性

    其实html5已经扩展了class操作的相关API,其中classList属性就以及实现了class的增删和判断. HTML DOM classList 属性 classList属性的方法有: add ...

  2. 10月16日下午MySQL数据库CRUD操作(增加、删除、修改、查询)

    1.MySQL注释语法--,# 2.2.后缀是.sql的文件是数据库查询文件. 3.保存查询. 关闭查询时会弹出提示是否保存,保存的是这段文字,不是表格(只要是执行成功了表格已经建立了).保存以后下次 ...

  3. Oracle 增加修改删除字段与添加注释

    添加字段的语法:alter table tablename add (column datatype [default value][null/not null],….); 修改字段的语法:alter ...

  4. Oracle 增加修改删除字段

    Oracle 增加修改删除字段 添加字段的语法:alter table tablename add (column datatype [default value][null/not null],…. ...

  5. python3之对本地TXT文件进行增加,删除,修改,查看功能。

    由于是初学,代码如有不足,欢迎指出! 本博客记录我的编程之路,记录所学到的知识,分享所学心得! 这是我的一个作业. 首先分析要求: 创建一个TXT文件用于存储账号与密码 实现对文件进行增加,删除,修改 ...

  6. ajax+php数据增加查询获取删除

    前段代码部分其实前面已经有写出但是做一点修改所以还是贴出来,可能大家看到代码回不理解,看完图我想大家会理解我为什么这么写了,这和前端布局有关系的,先列出内容在选择内容删除或修改 <!DOCTYP ...

  7. Oracle表字段的增加、删除、修改和重命名

    本文主要是关于Oracle数据库表中字段的增加.删除.修改和重命名的操作. 增加字段语法:alter table tablename add (column datatype [default val ...

  8. 使用oracle数据库,多用户同时对一个表进行增加,删除,修改,查看等操作,会不会有影响?

    使用oracle数据库,多用户同时对一个表进行增加,删除,修改,查看等操作,会不会有影响? 1.问题:各操作间或者性能上会不会有影响? 如果有该如何解决? 多用户操作的影响主要是回锁定记录,oracl ...

  9. AutoCad 二次开发 .net 之层表的增加 删除 修改图层颜色 遍历 设置当前层

    AutoCad 二次开发 .net 之层表的增加 删除 修改图层颜色 遍历 设置当前层 AutoCad 二次开发 .net 之层表的增加 删除 修改图层颜色 遍历 设置当前层我理解的图层的作用大概是把 ...

随机推荐

  1. Python全栈之路----函数进阶----闭包

    关于闭包,即函数定义和函数表达式位于另一个函数的函数体内(嵌套函数).而且,这些内部函数可以访问它们所在的外部函数中声明的所有局部变量.参数.当其中一个这样的内部函数在包含它们之外被调用时,就会形成闭 ...

  2. zabbix的自动发现、自定义添加监控项目、配置邮件告警

    1.zabbix的自动发现这里的自动发现,所显示出来的是规则的上自动了现 然后 可以对其内容进行相关的配制,如时间或周期 注意:对于单个主机的规则,可以自行添加或删除, 但对于已经添加好了的规则,若需 ...

  3. [ACM International Collegiate Programming Contest, Amman Collegiate Programming Contest (2018)]

    https://codeforces.com/gym/101810 A. Careful Thief time limit per test 2.5 s memory limit per test 2 ...

  4. Hyper-V 连网备忘

    最近总是把简单问题复杂化 1.内网连接: Hyper-V 上网一个内网连接足矣,宿主机与客户机可以互访,而且都可以上网.创建一个内网连接,默认配置界面如下: 然后把本地网卡共享给这个新建的内网连接,把 ...

  5. Java 中int、String的类型转换

    int -> String int i=12345;String s="";第一种方法:s=i+"";第二种方法:s=String.valueOf(i); ...

  6. 使用 vue-cli-service inspect 来查看一个 Vue CLI 3 项目的 webpack 配置信息(包括:development、production)

    使用 vue-cli-service inspect 来查看一个 Vue CLI 3 项目的 webpack 配置信息(包括:development.production) --mode 指定环境模式 ...

  7. 基于CRF工具的机器学习方法命名实体识别的过

    [转自百度文库] 基于CRF工具的机器学习方法命名实体识别的过程 | 浏览:226 | 更新:2014-04-11 09:32 这里只讲基本过程,不涉及具体实现,我也是初学者,想给其他初学者一些帮助, ...

  8. 基于MNIST数据集使用TensorFlow训练一个没有隐含层的浅层神经网络

    基础 在参考①中我们详细介绍了没有隐含层的神经网络结构,该神经网络只有输入层和输出层,并且输入层和输出层是通过全连接方式进行连接的.具体结构如下: 我们用此网络结构基于MNIST数据集(参考②)进行训 ...

  9. html/css/js-个人容易忘的一些属性

    1.当div里面的文字超过给定div给定的宽度,div里面的文字自动换行 word-break:break-all:会截断该行最后的单词 word-wrap:break-word:不会截断,该行长度最 ...

  10. ef join查询

    temp = temp.OrderByDescending(s => s.CreateTime).Skip((param.PageIndex - ) * param.PageSize).Take ...