Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.04.2015, 04:12   #1
Grizly13
 
Регистрация: 04.04.2015
Сообщений: 3
Восклицание Изменить user agent в TChromium

Здравствуйте, уважаемые форумчане!

Собственно, сабж.

Есть ли решение для первой версии DCEF ?

И чтобы не плодить темы сразу спрошу ещё вопросик:
Как изменять http заголовки в том же DCEF? Например, HTTP_ACCEPT_LANGUAGE, чтобы отображались русские версии сайтов.

Последний раз редактировалось Grizly13; 04.04.2015 в 04:20.
Grizly13 вне форума Ответить с цитированием
Старый 04.04.2015, 07:40   #2
DuM4uK
Пользователь
 
Регистрация: 29.09.2009
Сообщений: 32
Лампочка

Привет!

Смена user agent в dcef1, пример:

Код:
procedure TForm1.Button1Click(Sender: TObject);
var
  CookieManager: ICefCookieManager;
  CookiesPath  : String;
begin
  CookiesPath := 'C:\User1';
  CookieManager := TCefCookieManagerRef.Global;
  CookieManager.SetStoragePath(CookiesPath);
  Chromium1.Load('programmersforum.ru');
end;
Русские версии сайтов, перед использованием кода старые куки удали (если используешь):

Код:
procedure TForm1.Chromium1BeforeResourceLoad(Sender: TObject;
  const browser: ICefBrowser; const frame: ICefFrame;
  const request: ICefRequest; out Result: Boolean);
Var
  map: ICefStringMultimap;
begin
  map := TCefStringMultimapOwn.Create;
  request.GetHeaderMap(map);
  map.Append('Accept-Language', 'ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4');
  request.SetHeaderMap(map);
end;
DuM4uK вне форума Ответить с цитированием
Старый 04.04.2015, 14:07   #3
Grizly13
 
Регистрация: 04.04.2015
Сообщений: 3
По умолчанию

DuM4uK, так там ведь куки устанавливаешь, а не user agent меняешь.

А во втором случае такой вопрос... Если я tchromium создаю динамически, то как мне BeforeResourceLoad создать?
Grizly13 вне форума Ответить с цитированием
Старый 04.04.2015, 19:57   #4
DuM4uK
Пользователь
 
Регистрация: 29.09.2009
Сообщений: 32
По умолчанию

Цитата:
DuM4uK, так там ведь куки устанавливаешь, а не user agent меняешь.
Да, если не подрузомеваешь смену агента, куки можно и по другому установить, ты задал вопрос про смену user agent'a, то есть для нескольких пользователей сделать свое куки, или я что-то не так понял ..........

Цитата:
А во втором случае такой вопрос... Если я tchromium создаю динамически, то как мне BeforeResourceLoad создать?
Как вариант, можно держать на форме готовый TChromium.Visible:=False; c готовыми процедурами, при создании нового просто присваивать с него...

Последний раз редактировалось DuM4uK; 04.04.2015 в 20:09.
DuM4uK вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как в компоненте TChromium изменить user-agent sniip Общие вопросы Delphi 0 05.09.2014 17:45
Узнать user-agent dim5 C++ Builder 1 31.05.2014 09:32
Не меняется user agent JGalt Работа с сетью в Delphi 0 04.11.2013 01:22
Как изменить User-Agent в Embedded WB postal2 Компоненты Delphi 1 07.08.2009 12:54
WebBrowser и User-Agent celovec Работа с сетью в Delphi 2 15.12.2008 23:01