Criar TinyURL usando API Bitly em PHP
Você está procurando criar links curtos para URLs longos? Links curtos ou TinyURL são fáceis de compartilhar por e-mail e nas redes sociais. Neste artigo, estudamos como criar um link curto usando a API Bitly e PHP.
Bitly é um encurtador de URL e plataforma de gerenciamento de link. Eles nos permitem criar links curtos e rastrear a análise de link individual.
Sites populares como YouTube, Facebook, Twitter fornecem uma versão curta de um URL longo. Quando executamos o URL curto no navegador, ele redireciona automaticamente para o URL principal.
Dito isso, vamos ver como criar links curtos usando a API Bitly em PHP.
Começando
Para começar, primeiro você precisa ter uma conta no Bitly.
Como vamos usar a API Bitly, precisamos gerar um token de acesso que é obrigatório para interagir com as APIs. Para gerar o token de acesso, vá para a página Editar Perfil. Clique no menu de configurações superior direito e selecione seu nome de usuário / e-mail.
Na próxima página, você verá a opção para ‘Token de acesso genérico’. Clique nele e copie o seu token de acesso que precisamos em um momento.
Para criar um link curto com o Bitly, ele precisa enviar a solicitação HTTP POST para o endpoint da API. Vou escrever um código para Guzzle e cURL para enviar solicitações HTTP e receber respostas HTTP.
Enviar solicitação HTTP usando Guzzle
Para enviar solicitações HTTP, podemos usar Guzzle ou cURL. Mas, eu recomendo usar o Guzzle, pois não requer uma extensão cURL habilitada em seu servidor. Além disso, o Guzzle fornece um código limpo em comparação com cURL.
Instale a biblioteca Guzzle em seu projeto usando o comando:
composer require guzzlehttp/guzzle
Após a instalação do pacote, escreva o código abaixo em seu arquivo PHP que gera TinyURL para você.
<?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();
}
Certifique-se de substituir os marcadores YOUR_LONG_URL e YOUR_ACCESS_TOKEN pelos valores reais. Este código dá uma chamada para o https://api-ssl.bitly.com/
com o ponto de extremidade v4/bitlinks
. Em resposta, você receberá seu URL curto.
Enviar solicitação HTTP usando cURL
Estou recomendando o Guzzle para solicitações HTTP. Mesmo assim, se alguém quiser usar cURL, poderá usar o código abaixo. Na verdade, a escolha é do usuário. Se você já está usando o cURL em seu aplicativo, obviamente você vai para o cURL. Ambos os métodos estão dando o mesmo resultado. Portanto, decida qualquer método adequado para você.
<?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;
Espero que você entenda como criar TinyURL usando a API Bitly em PHP. Eu gostaria de ouvir seus pensamentos e sugestões na seção de comentários abaixo.
Artigos relacionados
- Speech-To-Text usando Amazon Transcribe em PHP
- Como integrar a API do Planilhas Google com PHP
- Text-To-Speech usando Amazon Polly em PHP