註冊 imgur API
首先到 https://imgur.com 註冊帳號 (註冊過程不寫了)
登入後點選左邊 imgur icon 下拉選單選到 developer api
右邊點選 Registration , 或是直接點 這個連結 https://api.imgur.com/oauth2/addclient
這裡會有一個錯誤,不明原因,無關後續步驟,忽略即可
在這頁面輸入
1. Application Name (很像是自己看的而已?)
2. Authorization type 選擇 Anonymous usage without user authorization
3. Authorization callback URL 填入 https://imgur.com 就好
4. 輸入自己的 E-mail , 用來收 Client_ID 和 Client secret
5. 通過不是機器人驗證
6. 按 Submit
Application 註冊成功後就會取得 Client_ID 和 Client secret
同時也會寄 E-mail 給你
我們只需要用 Client_ID 而已
如果要管理 Application 的話到右上角按 UserName 下拉選單,選 settings
左邊選 Applications 就可以進行管理
接下來是程式的部分
只要把 $client_id 改成你自己註冊取得的 Client_ID 就可以了圖檔可以自己算出 base64 編碼或給他一個可連結的網址都可以
上傳後 imgur 會回傳相關資訊,根據自己的需求變囉!
<?php
$client_id="e3156b49a0d176a";
// 方式一: 讀取檔案後算出 base64 編碼
$image = 'C:\WebSite\Google.png';
$imageHandle = fopen($image, "r");
$image = base64_encode(fread($imageHandle, filesize($image)));
// 方式二: 直接給 base64 編碼
$image = '(some base64 code)';
// 方式三: 給予網址 (http / https 都可以,不用是自己 Host 也行,只要能連到就好)
$image = 'https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png';
$curl_post_array = [
'image' => $image,
'title' => $title,
];
$timeout = 30;
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://api.imgur.com/3/image.json');
curl_setopt($curl, CURLOPT_TIMEOUT, $timeout);
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Authorization: Client-ID ' . $client_id));
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $curl_post_array);
$curl_result = curl_exec($curl);
curl_close ($curl);
$Received_JsonParse = json_decode($curl_result,true);
if ($Received_JsonParse['success'] = true) {
$ImgURL = $Received_JsonParse['data']['link'];
echo "Uploaded<br/><br/><img src='".$ImgURL."'/>";
} else {
echo "Error<br/><br/>".$Received_JsonParse['data']['error'];
};
?>
沒有留言:
張貼留言