<?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. selenium-java,selenium版本和火狐浏览器版本对应关系

    selenium3.5.0,firefox57,geckodriver-v0.19.1

  2. 跨源资源共享(CORS)概念、实现(用Spring)、起源介绍

    本文内容引用自: https://howtodoinjava.com/spring5/webmvc/spring-mvc-cors-configuration/ https://developer.m ...

  3. echarts画饼环状饼图相关参数配置

    今天做页面的时候用到了环状饼图,大家都知道echarts的API文档看起来实在费劲,折腾了半天才画出来我想要的饼图,把我用到的参数配置分享给大家,希望能帮到和我一样的对echarts不是那么熟悉的童鞋 ...

  4. yii2 获取模块名、控制器名、方法名

    在视图中: 模块名  $this->context->module->id控制器名 $this->context->id方法名 $this->context-> ...

  5. 同时开始了SQL。。。

    SQL LIMIT OFFSET 和 LIMIT code1: SELECT id, name, score FROM table ORDER BY score DESC LIMIT OFFSET 4 ...

  6. 学习笔记TF025:自编码器

    传统机器学习依赖良好的特征工程.深度学习解决有效特征难人工提取问题.无监督学习,不需要标注数据,学习数据内容组织形式,提取频繁出现特征,逐层抽象,从简单到复杂,从微观到宏观. 稀疏编码(Sparse ...

  7. 学习笔记TF023:下载、缓存、属性字典、惰性属性、覆盖数据流图、资源

    确保目录结构存在.每次创建文件,确保父目录已经存在.确保指定路径全部或部分目录已经存在.创建沿指定路径上不存在目录. 下载函数,如果文件名未指定,从URL解析.下载文件,返回本地文件系统文件名.如果文 ...

  8. centos7如何安装部署Zabbix

    参考http://www.cnblogs.com/momoshouhu/p/8041293.html 1.关闭selinux和firewall 1.1检测selinux是否关闭 [root@local ...

  9. cmd下PUSHD和POPD命令使用说明

    PUSHD命令保存当前目录以供 POPD 命令使用,然后改到指定的目录. PUSHD [path | ..] path 指定要成为当前目录的目录. 如果命令扩展被启用,除了一般驱动器号和路径,PUSH ...

  10. PP.io的三个阶段,“强中心”——“弱中心”——“去中心”

    什么是PP.io? PP.io是我和Bill发起的存储项目,目的在于为开发者提供一个去中心化的存储和分发平台,能做到更便宜,更高速,更隐私. 当然做去中心化存储的项目也有好几个,FileCoin,Si ...