Actualités WEB et WordPress, thèmes, plugins. Ici, nous partageons des conseils et les meilleures solutions de sites Web.

Trouver la destination d’une redirection avec PHP

11

Récemment, je travaillais sur un projet qui communiquait avec une API tierce qui, comme de nombreuses API, renvoie beaucoup de données dont une partie comprend une URL pour le produit associé à l’API.

La chose à propos de l’API qui était renvoyée n’était pas la bonne URL de destination. Au lieu de cela, il s’agissait d’une URL qui a finalement redirigé vers une autre URL.

Alors imaginez frapper, disons, acme.site-info.com et l’avoir directement sur acme.com. Nous le faisons manuellement tout le temps, mais j’avais besoin d’obtenir la destination réelle – ou finale – du direct à partir de l’URL.

Et trouver la destination d’une redirection avec PHP est facile ; cependant, cela suppose qu’il n’y a qu’une seule redirection.

Néanmoins, voici comment procéder.

Notez que l’hypothèse suivante suppose que vous êtes familier avec cURL.

Trouver la destination d'une redirection avec PHP

Et sinon, il est assez facile d’utiliser la fonction.

curl est utilisé dans les lignes de commande ou les scripts pour transférer des données. Il est également utilisé dans les voitures, les téléviseurs, les routeurs, les imprimantes, les équipements audio, les téléphones portables, les tablettes, les décodeurs, les lecteurs multimédias et constitue l’épine dorsale du transfert Internet pour des milliers d’applications logicielles affectant quotidiennement des milliards d’humains.

De plus, le manuel PHP contient de nombreuses informations à ce sujet que vous pouvez consulter au besoin (et vous en aurez probablement besoin à l’avenir également).

Trouver la destination d'une redirection avec PHP

Quoi qu’il en soit, voici le code avec un peu d’explication après le code :

La fonction effectue les opérations suivantes :

  1. accepte l’URL telle que fournie par l’API,
  2. récupère les en-têtes de la requête vers l’URL par cURL,
  3. fournit les en-têtes que nous pouvons lire en saisissant l’URL

Notez également que je sépare l’URL en fonction de la barre oblique afin que je puisse lire uniquement le domaine car je ne m’inquiète de rien après le domaine principal (donc si un domaine a une extension index. php , default. aspx extension, etc.), alors je peux l’utiliser au besoin dans mon travail.

Deuxièmement, notez que je ne sais pas si cela fonctionnera pour plus d’un saut. Donc, si vous avez plusieurs redirections, vous pouvez répéter cette fonction plusieurs fois. Je ne sais pas, mais j’ai pensé que cela valait la peine d’être mentionné.

Source d’enregistrement: tommcfarlin.com

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More