HTML の単一ページから百度の短縮 URL API を呼び出して短縮 URL を生成する

11,290 1

少し前に「jQuery でオンライン生成する t.cn 新浪短縮 URL」という記事を書きました。新浪微博の短縮 URL インターフェースを呼び出す内容でしたが、次第に短縮 URL に興味を持つようになり、そこでいくつかの公開されている短縮 URL インターフェースを探してみました。

今日は百度の短縮 URL インターフェースについて説明します。以下では、私の経験した手順と完成したコードを紹介します。(百度の短縮 URL は一部のドメインしかサポートしておらず、具体的なルールはよく分かりません。この記事はあまり実用的ではなく、学習用です)

開始

まず、百度短縮 URL の API リクエスト URL は次のとおりです:http://dwz.cn/create.php

リクエスト方法は post による送信のみ許可されています

リクエストパラメータは urlalias の 2 つで、1 つ目のパラメータは長い URL(必須)、2 つ目のパラメータはカスタム URL(任意)です。

返されるデータ: json 形式のデータ。

status = 0 の場合はエラーです。err_msg を確認するとエラー情報(UTF-8 エンコード)を取得できます。

status = -1 の場合は成功です。生成された tinyurl が短縮 URL です。

完成したコード

PHP
<?php
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,"http://dwz.cn/create.php");
curl_setopt($ch,CURLOPT_POST,true);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
$data=array('url'=>'http://www.baidu.com/');
curl_setopt($ch,CURLOPT_POSTFIELDS,$data);
$strRes=curl_exec($ch);
curl_close($ch);
$arrResponse=json_decode($strRes,true);
if($arrResponse['status'] == 0)
{
    echo iconv('UTF-8','GBK',$arrResponse['err_msg']);
}
echo $arrResponse['tinyurl'].;  //输出短网址
?>

百度の短縮 URL は新浪のものより使いやすいわけではないため、引き続き新浪の短縮 URL サービスを利用することをおすすめします。

コメント

(1)
  1. Chrome 77 Windows 7

    一直用的雷虎短链

コメントを投稿

憂いを忘れる一枚

「憂いを忘れる一枚」は、技術探究と日々の暮らしをテーマにした個人サイトです。Web 開発、バックエンド、DevOps の実践を記録し、ソフトウェアツールやデジタル体験、コードの外で得た見聞と思索を共有します。

© 2026 憂いを忘れる一枚. 無断転載を禁じます.