Створіть TinyURL, використовуючи Bitly API у PHP
Ви хочете створити короткі посилання для довгих URL-адрес? Короткі посилання або TinyURL легко ділитися електронною поштою та в соціальних мережах. У цій статті ми вивчаємо, як створити коротке посилання за допомогою API Bitly та PHP.
Bitly – це платформа для скорочення URL-адрес та управління посиланнями. Вони дозволяють нам створювати короткі посилання та відстежувати аналіз окремих посилань.
Популярні веб-сайти, такі як YouTube, Facebook, Twitter, надають коротку версію довгої URL-адреси. Коли ми запускаємо коротку URL-адресу у браузері, вона автоматично перенаправляє на основну URL-адресу.
З огляду на це, давайте подивимося, як створити короткі посилання за допомогою Bitly API в PHP.
Починаємо
Для початку спочатку потрібно мати рахунок на Bitly.
Оскільки ми збираємось використовувати Bitly API, нам потрібно створити маркер доступу, який є обов’язковим для взаємодії з API. Щоб згенерувати маркер доступу, перейдіть на сторінку Редагування профілю. Клацніть на меню налаштувань праворуч угорі, а потім виберіть ім’я користувача / електронну адресу.
На наступній сторінці ви побачите опцію "Загальний маркер доступу". Клацніть на нього та скопіюйте ваш маркер доступу, який нам потрібен за мить.
Для того, щоб створити коротке посилання з Bitly, йому потрібно надіслати запит HTTP POST до кінцевої точки API. Я збираюся написати код для Guzzle та cURL для надсилання HTTP-запитів та отримання відповідей HTTP.
Надіслати запит HTTP за допомогою Guzzle
Для надсилання HTTP-запитів ми можемо використовувати Guzzle або cURL. Але я рекомендую використовувати Guzzle, оскільки він не вимагає розширення cURL, увімкненого на вашому сервері. Крім того, Guzzle надає чистий код порівняно з cURL.
Встановіть бібліотеку Guzzle у свій проект за допомогою команди:
composer require guzzlehttp/guzzle
Після встановлення пакета напишіть код нижче у своєму PHP-файлі, який генерує для вас TinyURL.
<?php
require_once "vendor/autoload.php";
use GuzzleHttpClient;
try {
$client = new Client([
// Base URI is used with relative requests
'base_uri' => 'https://api-ssl.bitly.com/',
]);
$response = $client->request('POST', 'v4/bitlinks', [
'json' => [
'long_url' => 'YOUR_LONG_URL',
],
'headers' => [
'Authorization' => 'Bearer YOUR_ACCESS_TOKEN'
],
'verify' => false,
]);
if(in_array($response->getStatusCode(), [200, 201])) {
$body = $response->getBody();
$arr_body = json_decode($body);
echo $arr_body->link;
}
} catch(Exception $e) {
echo $e->getMessage();
}
Обов’язково замініть заповнювачі YOUR_LONG_URL та YOUR_ACCESS_TOKEN на фактичні значення. Цей код дає виклик https://api-ssl.bitly.com/
кінцевій точці v4/bitlinks
. У відповідь ви отримаєте свою коротку URL-адресу.
Надіслати запит HTTP за допомогою cURL
Я рекомендую Guzzle для запитів HTTP. Але все ж, якщо хтось хоче використовувати cURL, тоді він може скористатися наведеним нижче кодом. Насправді вибір залежить від користувача. Якщо ви вже використовуєте cURL у своїй програмі, тоді, очевидно, ви йдете на cURL. Обидва методи дають однаковий результат. Тож визначтесь із будь-яким підходящим для вас способом.
<?php
$url = 'https://api-ssl.bitly.com/v4/bitlinks';
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode(['long_url' => 'YOUR_LONG_URL']));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Authorization: Bearer YOUR_ACCESS_TOKEN",
"Content-Type: application/json"
]);
$arr_result = json_decode(curl_exec($ch));
echo $arr_result->link;
Сподіваюсь, ви розумієте, як створити TinyURL за допомогою API Bitly в PHP. Я хотів би почути ваші думки та пропозиції у розділі коментарів нижче.
Пов’язані статті
- Мова до тексту за допомогою Amazon Transcribe у PHP
- Як інтегрувати API Google Sheets з PHP
- Перетворення тексту в мову за допомогою Amazon Polly у PHP