Не удается получить обновленный текстовый файл с другого сервера. Какова причина этого? - PullRequest
0 голосов
/ 06 января 2012

Я пытаюсь получить часто обновляемый текстовый файл с другого сервера, например http://site2.com/state.txt, с помощью функции cURL или PHP file_get_contents ().

С помощью двух способов, после нескольких запросов я получаю предыдущий файл, а не обновленный.

Если я изменяю путь к файлу как http://www.site2.com/state.txt, он получаетнекоторое время обновляется файл и снова начинает получать старое содержимое.

Что я могу сделать для получения обновленного файла?

Спасибо за помощь

1 Ответ

0 голосов
/ 06 января 2012

Я не знаю php и не знаю curl, но мне кажется, что я знаю проблему кеширования браузера, когда вижу ее.

Когда ваш браузер видит один и тот же запрос get несколько раз, он обслуживает вас в кешеверсия вместо того, чтобы идти и фактически выполнять запрос.

Два способа исправить:

  1. Очистить кеш браузера каждый раз, когда вы хотите получить обновленный файл.(Это шутка)

  2. Когда вы делаете свой запрос на получение, вы должны добавить некоторую временную отметку в конец вашего URL.

Я сделал бы это в javascript.

var url = "http://www.site2.com/state.txt?_=" + now();

Так что в основном я добавляю параметр с именем '_' в конец запроса, который имеет значение текущей метки времени.Это приведет к тому, что браузер выполнит новый запрос на получение и не выдаст вам кэшированную версию.

...