Maison  >  Article  >  développement back-end  >  Comment utiliser curl pour suivre le saut en php

Comment utiliser curl pour suivre le saut en php

PHPz
PHPzoriginal
2023-03-20 15:33:322557parcourir

PHP est un langage de programmation largement utilisé dans le développement back-end, et cURL est l'une des extensions les plus importantes, donnant accès au World Wide Web et à d'autres services d'application. Lors de l'utilisation de cURL, le suivi des sauts est l'une des fonctionnalités très utiles. Cet article explique comment utiliser cURL en PHP pour suivre les redirections.

1. Qu'est-ce que le saut de suivi

Le saut de suivi, également connu sous le nom de redirection automatique, indique si le client demande automatiquement la nouvelle URL qui est dirigée vers la destination après une redirection dans la requête HTTP, sans avoir besoin de Make. la demande manuellement. Dans les applications Web, vous devrez peut-être utiliser des sauts de suivi pour diverses raisons (telles que l'équilibrage de la charge du serveur, la redirection, la connexion, etc.). Si le suivi de la demande n'est pas activé, l'application client reviendra au traitement. À ce stade, la redirection doit être gérée manuellement (par programme).

2. Utilisez cURL pour suivre le saut

cURL est un client, une bibliothèque et un ensemble d'outils open source qui prend en charge diverses alternatives de réseau. Les requêtes HTTP peuvent être effectuées à l'aide de la bibliothèque cURL. Nous pouvons donc l'utiliser pour obtenir des URL de redirection, ou suivre et gérer les redirections déjà effectuées.

  1. Activer les redirections de suivi

Lors de l'utilisation de cURL, les redirections ne seront pas suivies par défaut. Pour activer la fonction de redirection de suivi, vous pouvez utiliser la fonction curl_setopt() et transmettre son deuxième paramètre CURLOPT_FOLLOWLOCATION pour le définir.

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://example.com/");
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_exec($ch);
curl_close($ch);
  1. Obtenir l'URL de redirection

Vous pouvez facilement capturer l'URL de redirection en utilisant cURL comme indiqué ci-dessous :

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://example.com/");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_NOBODY, true);
$response = curl_exec($ch);
$redirectedUrl = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);
curl_close($ch);

Dans le code ci-dessus, CURLOPT_RETURNTRANSFER est défini sur true pour convaincre cURL de renvoyer la réponse au lieu de la sortir directement. La fonction de ces deux paramètres, CURLOPT_HEADER et CURLOPT_NOBODY, est de traiter l'en-tête de la requête. La fonction curl_getinfo() fournit de nombreuses informations sur les ressources cURL, telles que CURLINFO_EFFECTIVE_URL pour obtenir l'URL redirigée. Une session cURL créée précédemment doit être utilisée avec cette fonction lors de l'appel de cette fonction.

3. Notes

Lorsque vous utilisez la fonction de redirection de suivi de cURL, vous devez faire attention aux points suivants :

  1. Par défaut, cURL ne suit pas les redirections. Ce n'est que lorsque le paramètre CURLOPT_FOLLOWLOCATION de la fonction curl_setopt est défini sur true que cURL suivra la redirection.
  2. Vous devez également faire attention à certains problèmes lors de la capture des URL de redirection, par exemple si vous devez appeler la fonction curl_close() pour fermer la session après le traitement.
  3. En raison des différents environnements réseau, des problèmes tels que l'échec de la fonction de suivi de saut peuvent survenir. Il est donc nécessaire de maîtriser l’utilisation de cette fonction de manière flexible dans la pratique.

4. Résumé

Cet article présente la fonction de saut de suivi utilisant cURL, qui est une technologie très pratique et souvent utilisée dans de nombreuses applications Web. Bien que l’utilisation de cURL soit relativement compliquée, une compréhension et une utilisation minutieuses de celui-ci seront certainement d’une grande aide pour le travail des développeurs Web.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn