百度短網址接口與研究

目前來說,短網址是一個非常流行的趨勢,對於內鏈和跳轉來說。

比如新浪微博的t.cn

騰訊的url.cn

以及百度的dwz.cn,這些斷鏈平臺都提供了自己的接口以供開發者進行短鏈和長鏈的轉換。

這其中最簡單的莫過於百度的短網址服務,dwz.cn。

下面提供PHP版的加密和解密接口如下:

  1: <?php
  2: 
  3: $ch=curl_init();
  4: 
  5: curl_setopt($ch,CURLOPT_URL,"http://dwz.cn/create.php");
  6: 
  7: curl_setopt($ch,CURLOPT_POST,true);
  8: 
  9: curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
 10: 
 11: $data=array('url'=>'http://www.baidu.com/');
 12: 
 13: curl_setopt($ch,CURLOPT_POSTFIELDS,$data);
 14: 
 15: $strRes=curl_exec($ch);
 16: 
 17: curl_close($ch);
 18: 
 19: $arrResponse=json_decode($strRes,true);
 20: 
 21: if($arrResponse['status']!=0)
 22: {
 23: /**錯誤處理*/
 24: echo iconv('UTF-8','GBK',$arrResponse['err_msg'])."\n";
 25: }
 26: 
 27: //返回短網址
 28: echo$arrResponse['tinyurl']."\n";
 29: 
 30: ?>
 31: 

下面是解密的

 

  1: <?php
  2: 
  3: $ch=curl_init();
  4: 
  5: curl_setopt($ch,CURLOPT_URL,"http://dwz.cn/query.php");
  6: 
  7: curl_setopt($ch,CURLOPT_POST,true);
  8: 
  9: curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
 10: 
 11: $data=array('tinyurl'=>'http://dwz.cn/1E');
 12: 
 13: curl_setopt($ch,CURLOPT_POSTFIELDS,$data);
 14: 
 15: $strRes=curl_exec($ch);
 16: 
 17: curl_close($ch);
 18: 
 19: $arrResponse=json_decode($strRes,true);
 20: 
 21: if($arrResponse['status']==0)
 22: 
 23: {
 24: 
 25: /**錯誤處理*/
 26: 
 27: echo iconv('UTF-8','GBK',$arrResponse['err_msg'])."\n";
 28: 
 29: }
 30: 
 31: /**返回長網址*/
 32: 
 33: echo$arrResponse['longurl']."\n";
 34: 
 35: ?>

很方便。。

但是也有煩人的是,對於一些收錄比較少的網站來說,會無法加密,返回“網址可能存在風險”的錯誤。

很坑爹。

建議試好再用。。

如果實在不行的話,可以選擇使用其他接口。敬請關注本博下篇博文講述的新浪短鏈接口。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章