激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - SAE實時日志接口SDK用法示例

SAE實時日志接口SDK用法示例

2021-03-09 16:21夏天的風 PHP教程

這篇文章主要介紹了SAE實時日志接口SDK用法,結合實例形式分析了PHP版本的接口調用SDK及相應的使用方法,需要的朋友可以參考下

本文實例講述了SAE實時日志接口SDK用法。分享給大家供大家參考,具體如下:

新浪SAE是新浪研發中心開發的國內首個公有云平臺,從2009年開始到現在也是也來越成熟,開放了很多接口以及服務供開發者使用。這次為了方便開發者調試分析,SAE新增實時日志查詢接口。今后您可以通過API對日志信息進行篩選,并下載所需的實時日志。但是新浪SAE官方只給出的Python的實現,這里給出PHP版本的接口調用SDK

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
class SaeApiHandler{
  /**
  *  定義accessKey
  */
  private $accessKey;
  /**
  *  定義secretKey
  */
  private $secretKey;
  /**
  *  定義時間戳
  */
  private $timestamp;
  /**
  *  構造函數
  */
  public function __construct($key,$sec){
    $this->accessKey = $key;
    $this->secretKey = $sec;
    $this->timestamp = time();
  }
  /**
  *  重載get方法
  */
  public function __call($name,$arg){
    $ret = array();
    if (is_array($arg[0])) {
      $len = count($arg);
      for ($i=0; $i < $len; $i++) {
        $ret[$i] = $arg[$i]['fop'] ? $this->$name($arg[$i]['service'],$arg[$i]['date'],$arg[$i]['ident'],$arg[$i]['fop']):$this->$name($arg[$i]['service'],$arg[$i]['date'],$arg[$i]['ident']);
      }
    }else{
      $ret = $arg[3] ? $this->$name($arg[0],$arg[1],$arg[2],$arg[3]) : $this->get($arg[0],$arg[1],$arg[2]);
    }
    return $ret;
  }
  /**
  *  獲取日志
  *  @param string 需要的日志
  *  @param string 時間
  *  @param string 日志類型
  *  @param string 過濾符
  *  @return array
  */
  private function getLog($service,$date,$ident,$fop=null){
    if ($fop) {
      $uri = '/log/'.$service.'/'.$date.'/'.$_SERVER['HTTP_APPVERSION'].'-'.$ident.'.log?'.$fop;
    }else{
      $uri = '/log/'.$service.'/'.$date.'/'.$_SERVER['HTTP_APPVERSION'].'-'.$ident.'.log';
    }
    $ret = explode(PHP_EOL,$this->get($uri));
    array_splice($ret,0,7);
    array_pop($ret);
    return $ret;
  }
  private function get($uri){
    $host = 'http://g.sae.sina.com.cn'.$uri;
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,$host);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $this->saeHeader($uri));
    curl_setopt($ch, CURLOPT_HEADER, 1);
    $ret = curl_exec($ch);
    curl_close($ch);
    return $ret;
  }
  /**
  *  SAE請求頭
  *  @return array
  */
  private function saeHeader($uri){
    return array(
        'Host: g.sae.sina.com.cn',
        'Accept: text/plain',
        'x-sae-accesskey: '.$this->accessKey,
        'x-sae-timestamp: '.$this->timestamp,
        'Authorization: '. $this->getAuthorization($uri)
      );
  }
  /**
  *  獲取gAuthorization
  */
  private function getAuthorization($uri){
    $header = array(
        'x-sae-timestamp' => $this->timestamp,
        'x-sae-accesskey' => strtolower($this->accessKey)
      );
    ksort($header);
    $sae_header = array('GET',$uri);
    foreach ($header as $key => $value) {
      $sae_header[count($sae_header)] = $key.':'.$value;
    }
    $ret = implode(PHP_EOL, $sae_header);
    $auth = 'SAEV1_HMAC_SHA256 '.base64_encode(hash_hmac('sha256',$ret,$this->secretKey,true));
    return $auth;
  }
}

使用也很簡單,實例化SaeApiHandler類,調用getLog()方法即可。該方法可以傳遞數組參數或者字符串,具體可以到SAE文檔看,如果需要返回多組日志,則傳遞多個數組即可。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$test = new SaeApiHandler(SAE_ACCESSKEY,SAE_SECRETKEY);
$arr1 = array(
  'service'=>'http',
  'date'=>'2015-07-03',
  'ident'=>'access',
  'fop'=>'head/1/5'
  );
$arr2 = array(
  'service'=>'http',
  'date'=>'2015-07-03',
  'ident'=>'access',
  'fop'=>'head/1/5'
  );
$ret = $test->getLog($arr1,$arr2);
var_dump($ret);

希望本文所述對大家PHP程序設計有所幫助。

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25
主站蜘蛛池模板: 色视频一区二区 | 欧美一区二区精品夜夜嗨 | 国产一区二区三区在线免费 | 深夜小视频在线观看 | 久久αv| 欧美一级性| 日韩视频一二三 | 曰韩一级片 | 91久久国产露脸精品国产护士 | 久久久电影电视剧免费看 | 中国洗澡偷拍在线播放 | av电影免费看 | 黑色丝袜美美女被躁视频 | 极品xxxx欧美一区二区 | 欧美成人一级片 | 羞羞视频免费观看入口 | 午夜视频在线观看免费视频 | 一区二区久久久久草草 | 欧美日韩一区,二区,三区,久久精品 | 黄色av网站在线观看 | 毛片在线播放视频 | 精品无吗乱吗av国产爱色 | 欧美日韩大片在线观看 | 成人免费观看49www在线观看 | 国产精品99久久久久久久vr | 99精品视频在线观看免费 | 免费黄色大片在线观看 | 国产免费一区二区三区网站免费 | 免费看黄色一级大片 | 国色天香综合网 | 毛片免费观看日本中文 | 看黄在线观看 | 中国fx性欧美xxxx | 亚洲五码在线观看视频 | 99久久久精品免费观看国产 | 久久精品无码一区二区三区 | 久久青草热 | 亚洲性综合网 | 黄色影院av | 久久福利在线 | 午夜影视一区二区 |