Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.08.27;
Скачать: CL | DM;

Вниз

Кэширование WEB-страниц в прокси...КАК?   Найти похожие ветки 

 
Djnt   (2006-04-09 13:43) [0]

Пишу проксик на Инди, ну собственно уже написал почти, но никак не могу придумать технологию кэширования страниц,и не очень понятен потом алгоритм поиска сохранённых страниц...

Если кто с подобным сталкивался, или есть пример кода, ссылка на помощь по этому делу буду очень благодарен!


 
Ketmar ©   (2006-04-09 19:22) [1]

индекс, в котором хранится имя сохранённого на диске файла и время его изменения. размер индекса лимитирован только терпением юзера. для маленьких кэшэй вполне подойдёт какой-нибудь TStringList.


 
Poirot ©   (2006-04-10 09:21) [2]

Для начала проситай про HTTP например, есть замечательные заголовки, которые как раз таки и могут помочь кешировать страницы...
А далее думаю разобраться легче буит по каким признакам искать...
Я в своё время просто хешировал URL и сохрянал файл в соответствии со значением хеша и потом по этому хешу мог спокойно найти страничку, а вот затем уже определить up to date она или нет поможет чтение заголовка HTTP ответа от сервера на запрос HEAD.
Дерзай. Удачи.
Есть простенькая книжка по HTTP:

HTTP Developer"s Handbook By Chris Shiflett
   
Publisher : Sams Publishing
Pub Date : March 21, 2003
ISBN : 0-672-32454-7
Pages : 312


 
Djnt   (2006-04-10 19:32) [3]


> индекс, в котором хранится имя сохранённого на диске файла
> и время его изменения

не очень понял это....индекс по моему разумению это ж уникальное число , номер...как в нем может храниться имя не понятно..
про поиск более менее понял...а вот про сохранение файлов ВЕБА в папку с прокси - есть ли какой нить метод - что б буфер который у меня в buff:=idTCPClient.AllData(); сразу пихнуть в файл с именем запроса?


 
Poirot ©   (2006-04-11 10:45) [4]

>>не очень понял это....индекс по моему разумению это ж уникальное число , номер...
Я же написал - Хеширование - напримерр MD5 можно попробовать - т.е. считаешь хешь строки запроса и получаешь 128 бит или 32 символа в HEX вот это и буит имя файла или уникальный идентификатор файла.
ЗЫ: А почему пользуешь idTCP? чем idHttp не угодил?!
Задача в чем написать HTTP сервер или просто TPC изучить и на нём написать?!
>>buff:=idTCPClient.AllData();
Есть потоки например для этого!


 
Poirot ©   (2006-04-11 10:48) [5]

Частично снимаю свои коментарии поповоду HTTP.


 
Djnt   (2006-04-12 10:22) [6]


> >>buff:=idTCPClient.AllData();
> Есть потоки например для этого!

потоки для сохраненеия буфера? если можно - пример...
да задача использовать именно idTCPServer, на ХТТПсервер там и писать нечего)) там все написано)



Страницы: 1 вся ветка

Текущий архив: 2006.08.27;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.039 c
9-1133498299
Fosgen
2005-12-02 07:38
2006.08.27
"Ошибка перечисления" из-за чего может возникать?


1-1152689814
Alexandr
2006-07-12 11:36
2006.08.27
Компонент для настройки шрифтов у компонетов на форме


3-1150711334
Id
2006-06-19 14:02
2006.08.27
Безопасность в FB


6-1144673974
Xerx
2006-04-10 16:59
2006.08.27
Асинхронная работа


2-1154946536
lllEl
2006-08-07 14:28
2006.08.27
отчеты