Используя этот php-скрипт, я могу вызвать веб-сервис. Имена файлов будут записаны в базу данных. Они запрашиваются и не существуют.
$url = "http://test.com/test.php?request=file name.jpg";
$ch = curl_init();
curl_setopt( $ch, CURLOPT_URL, $url );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, TRUE );
$data = curl_exec( $ch );
print( $data );
curl_close( $ch );
Проблема в «file name.jpg». Это не закодировано.
Когда он попадает в веб-сервис, URI запроса выглядит следующим образом
["REQUEST_URI"]=> string(28) "/test/test.php?filename=file"
Усекает URL в начале первого пробела.
Моя проблема в том, что я не могу контролировать, как люди отправляют этот запрос. Конечно, они должны выполнять функцию urlencode, но я не могу их заставить.
Так что мне нужно решение, чтобы получить полный URI REQUEST или перехватить это как ошибку.