logo
Free, Micro AI Code Reviews That Run on Git Commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, Micro AI Code Reviews That Run on Git Commit | Product Hunt git-lrc - Free, Micro AI Code Reviews That Run on Git Commit | Product Hunt

CURLINFO_REDIRECT_URL - get the URL a redirect would go to

Availability

Added in curl 7.18.2

Description

Pass a pointer to a char pointer to receive the URL a redirect would take you to if you would enable CURLOPT_FOLLOWLOCATION(3). This can come handy if you think using the built-in libcurl redirect logic is not good enough for you but you would still prefer to avoid implementing all the magic of figuring out the new URL. This URL is also set if the CURLOPT_MAXREDIRS(3) limit prevented a redirect to happen (since 7.54.1).

Example

int main(void) { CURL *curl = curl_easy_init(); if(curl) { CURLcode res; curl_easy_setopt(curl, CURLOPT_URL, "https://example.com"); res = curl_easy_perform(curl); if(res == CURLE_OK) { char *url = NULL; curl_easy_getinfo(curl, CURLINFO_REDIRECT_URL, &url); if(url) printf("Redirect to: %s\n", url); } curl_easy_cleanup(curl); } }

Name

CURLINFO_REDIRECT_URL - get the URL a redirect would go to

Protocols

This functionality affects http only

Return Value

curl_easy_getinfo(3) returns a CURLcode indicating success or error. CURLE_OK (0) means everything was OK, non-zero means an error occurred, see libcurl-errors(3).

See Also

CURLINFO_REDIRECT_COUNT(3), CURLINFO_REDIRECT_TIME_T(3), CURLOPT_FOLLOWLOCATION(3), curl_easy_getinfo(3), curl_easy_setopt(3) libcurl 2025-06-16 CURLINFO_REDIRECT_URL(3)

Synopsis

#include <curl/curl.h> CURLcode curl_easy_getinfo(CURL *handle, CURLINFO_REDIRECT_URL, char **urlp);

See Also