Я пытаюсь получить ответ.
С помощью curl_exec
работает нормально, но проблема в том, что он получает ответ с другим IP.
Я хочу получить ответ от IP-адреса клиента или пользователя, а не от IP-адреса сервера.
$URL = "https://drive.google.com/get_video_info?docid=".$_SERVER["QUERY_STRING"];
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $URL);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 2);
$response_data = urldecode(urldecode(curl_exec($curl)));
curl
работает на сервере, а не на клиенте. Любая команда HTTP, введенная curl, будет использовать IP-адрес сервера в качестве запрашивающего.
В зависимости от услуги, которую вы вызываете, возможно, вы можете использовать X-Forwarded-For
Заголовок HTTP используется в интернет прокси.
$URL = "https://drive.google.com/get_video_info?docid=".$_SERVER["QUERY_STRING"];
$curl = curl_init();
// set the command as requested by the client IP
curl_setopt($curl,CURLOPT_HTTPHEADER,array('X-Forwarded-For: '. $_SERVER['REMOTE_ADDR']));
curl_setopt($curl, CURLOPT_URL, $URL);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 2);
$response_data = urldecode(urldecode(curl_exec($curl)));
Служба, которую вы вызываете, может использовать заголовок для определения IP-адреса отправителя. С использованием X-Forwarded-For
не будет работать со всеми сервисами и серверными фреймворками.
XMLHttpRequest
или некоторые функции в JQuery или Angular), чтобы сделать запрос.Вы можете проверить:
X-Forwarded-For
: Получить IP-адрес клиента с помощью PHPX-Forwarded-For
с завитком: Как я могу подделать IP-адрес отправителя с помощью curl?заставить клиента установить curl на своем компьютере и запустить там код или заставить клиента установить прокси на своем компьютере, а затем прокси-соединение через клиент с помощью CURLOPT_PROXY & сотрудничество.