{"id":25333,"date":"2021-06-04T11:30:00","date_gmt":"2021-06-04T08:30:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=25333"},"modified":"2021-10-18T02:09:12","modified_gmt":"2021-10-17T23:09:12","slug":"creer-tinyurl-a-l-aide-de-l-api-bitly-en-php","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/fr\/creer-tinyurl-a-l-aide-de-l-api-bitly-en-php\/","title":{"rendered":"Cr\u00e9er TinyURL \u00e0 l&rsquo;aide de l&rsquo;API Bitly en PHP"},"content":{"rendered":"<p>Cherchez-vous \u00e0 cr\u00e9er des liens courts pour les URL longues\u00a0? Les liens courts ou TinyURL sont faciles \u00e0 partager par e-mail et sur les r\u00e9seaux sociaux. Dans cet article, nous \u00e9tudions comment cr\u00e9er un lien court en utilisant l&rsquo;API Bitly et PHP.<\/p>\n<p><a href=\"https:\/\/bitly.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Bitly<\/a> est une plate-forme de raccourcissement d&rsquo;URL et de gestion de liens. Ils nous permettent de cr\u00e9er des liens courts et de suivre l&rsquo;analyse des liens individuels.<\/p>\n<p>Les sites Web populaires comme YouTube, Facebook, Twitter fournissent une version courte d&rsquo;une URL longue. Lorsque nous ex\u00e9cutons l&rsquo;URL courte sur le navigateur, il redirige automatiquement vers l&rsquo;URL principale.<\/p>\n<p>Cela \u00e9tant dit, voyons comment cr\u00e9er des liens courts \u00e0 l&rsquo;aide de l&rsquo;API Bitly en PHP.<\/p>\n<h3>Commencer<\/h3>\n<p>Pour commencer, vous devez d&rsquo;abord avoir un compte sur <a href=\"https:\/\/bitly.com\/a\/sign_in\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Bitly<\/a>.<\/p>\n<p>Comme nous allons utiliser l&rsquo;API Bitly, nous devons g\u00e9n\u00e9rer un jeton d&rsquo;acc\u00e8s obligatoire pour interagir avec les API. Pour g\u00e9n\u00e9rer le jeton d&rsquo;acc\u00e8s, acc\u00e9dez \u00e0 votre page Modifier le profil. Cliquez sur le menu des param\u00e8tres en haut \u00e0 droite, puis s\u00e9lectionnez votre nom d&rsquo;utilisateur\/e-mail.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20351-6081e337ee4ea.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20351-6081e337ee4ea.png\" alt=\"Cr\u00e9er TinyURL \u00e0 l&#039;aide de l&#039;API Bitly en PHP\" ><\/a><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20351-6081e33848c8f.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20351-6081e33848c8f.png\" alt=\"Cr\u00e9er TinyURL \u00e0 l&#039;aide de l&#039;API Bitly en PHP\" ><\/a><\/p>\n<p>Sur la page suivante, vous verrez l&rsquo;option \u00ab\u00a0Jeton d&rsquo;acc\u00e8s g\u00e9n\u00e9rique\u00a0\u00bb. Cliquez dessus et copiez votre jeton d&rsquo;acc\u00e8s dont nous avons besoin dans un instant.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20351-6081e3389690c.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20351-6081e3389690c.png\" alt=\"Cr\u00e9er TinyURL \u00e0 l&#039;aide de l&#039;API Bitly en PHP\" ><\/a><\/p>\n<p>Afin de cr\u00e9er un lien court avec Bitly, il doit envoyer la requ\u00eate HTTP POST au point de terminaison de l&rsquo;API. Je vais \u00e9crire un code pour Guzzle et cURL pour envoyer des requ\u00eates HTTP et recevoir des r\u00e9ponses HTTP.<\/p>\n<h3>Envoyer une requ\u00eate HTTP \u00e0 l&rsquo;aide de Guzzle<\/h3>\n<p>Pour envoyer des requ\u00eates HTTP, nous pouvons utiliser Guzzle ou cURL. Mais, je recommande d&rsquo;utiliser Guzzle car il ne n\u00e9cessite pas d&rsquo;extension cURL activ\u00e9e sur votre serveur. De plus, Guzzle fournit un code propre par rapport \u00e0 cURL.<\/p>\n<p>Installez la biblioth\u00e8que Guzzle dans votre projet \u00e0 l&rsquo;aide de la commande\u00a0:<\/p>\n<pre><code>composer require guzzlehttp\/guzzle<\/code><\/pre>\n<p>Lors de l&rsquo;installation du package, \u00e9crivez le code ci-dessous dans votre fichier PHP qui g\u00e9n\u00e8re TinyURL pour vous.<\/p>\n<pre><code>&lt;?php\nrequire_once \"vendor\/autoload.php\";\n\u00a0\u00a0\nuse GuzzleHttpClient;\n\u00a0\ntry {\n\u00a0\u00a0\u00a0\u00a0$client = new Client([\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/ Base URI is used with relative requests\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'base_uri' =&gt; 'https:\/\/api-ssl.bitly.com\/',\n\u00a0\u00a0\u00a0\u00a0]);\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0$response = $client-&gt;request('POST', 'v4\/bitlinks', [\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'json' =&gt; [\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'long_url' =&gt; 'YOUR_LONG_URL',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0],\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'headers' =&gt; [\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'Authorization' =&gt; 'Bearer YOUR_ACCESS_TOKEN'\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0],\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'verify' =&gt; false,\n\u00a0\u00a0\u00a0\u00a0]);\n\u00a0\n\u00a0\u00a0\u00a0\u00a0if(in_array($response-&gt;getStatusCode(), [200, 201])) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$body = $response-&gt;getBody();\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$arr_body = json_decode($body);\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0echo $arr_body-&gt;link;\n\u00a0\u00a0\u00a0\u00a0}\n} catch(Exception $e) {\n\u00a0\u00a0\u00a0\u00a0echo $e-&gt;getMessage();\n}<\/code><\/pre>\n<p>Assurez-vous de remplacer les espaces r\u00e9serv\u00e9s YOUR_LONG_URL et YOUR_ACCESS_TOKEN par les valeurs r\u00e9elles. Ce code appelle le <code>https:\/\/api-ssl.bitly.com\/<\/code>avec le point de terminaison <code>v4\/bitlinks<\/code>. En r\u00e9ponse, vous obtiendrez votre URL courte.<\/p>\n<h3>Envoyer une requ\u00eate HTTP \u00e0 l&rsquo;aide de cURL<\/h3>\n<p>Je recommande Guzzle pour les requ\u00eates HTTP. Mais quand m\u00eame, si quelqu&rsquo;un veut utiliser cURL, il peut utiliser le code ci-dessous. En fait, le choix appartient \u00e0 l&rsquo;utilisateur. Si vous utilisez d\u00e9j\u00e0 cURL sur votre application, vous optez \u00e9videmment pour cURL. Les deux m\u00e9thodes donnent le m\u00eame r\u00e9sultat. D\u00e9cidez donc de la m\u00e9thode qui vous convient.<\/p>\n<pre><code>&lt;?php\n$url = 'https:\/\/api-ssl.bitly.com\/v4\/bitlinks';\n$ch = curl_init($url);\ncurl_setopt($ch, CURLOPT_POSTFIELDS, json_encode(['long_url' =&gt; 'YOUR_LONG_URL']));\ncurl_setopt($ch, CURLOPT_RETURNTRANSFER, true);\ncurl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);\ncurl_setopt($ch, CURLOPT_HTTPHEADER, [\n\u00a0\u00a0\u00a0\u00a0\"Authorization: Bearer YOUR_ACCESS_TOKEN\",\n\u00a0\u00a0\u00a0\u00a0\"Content-Type: application\/json\"\n]);\n\u00a0\u00a0\n$arr_result = json_decode(curl_exec($ch));\necho $arr_result-&gt;link;<\/code><\/pre>\n<p>J&rsquo;esp\u00e8re que vous comprenez comment cr\u00e9er TinyURL \u00e0 l&rsquo;aide de l&rsquo;API Bitly en PHP. J&rsquo;aimerais entendre vos pens\u00e9es et suggestions dans la section des commentaires ci-dessous.<\/p>\n<h4>Articles Li\u00e9s<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/speech-to-text-a-l-aide-d-amazon-transcribe-en-php\/\" title=\"Speech-To-Text \u00e0 l&#039;aide d&#039;Amazon Transcribe en PHP\">Speech-To-Text \u00e0 l&rsquo;aide d&rsquo;Amazon Transcribe en PHP<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/comment-integrer-l-api-google-sheets-avec-php\/\" title=\"Comment int\u00e9grer l&#039;API Google Sheets avec PHP\">Comment int\u00e9grer l&rsquo;API Google Sheets avec PHP<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/text-to-speech-utilisant-amazon-polly-en-php\/\" title=\"Text-To-Speech utilisant Amazon Polly en PHP\">Text-To-Speech utilisant Amazon Polly en PHP<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Source d&rsquo;enregistrement:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dans cet article, je vous montre comment cr\u00e9er une TinyURL en utilisant le service populaire Bitly. Les TinyURL sont faciles \u00e0 partager sur les r\u00e9seaux sociaux, par e-mail,<\/p>\n","protected":false},"author":1,"featured_media":21660,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[273],"tags":[844],"class_list":["post-25333","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php-4","tag-affiai-fr"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts\/25333","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/comments?post=25333"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts\/25333\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/media\/21660"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/media?parent=25333"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/categories?post=25333"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/tags?post=25333"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}