set_hook_on_begin_transaction

set_hook_on_begin_transaction(php_script_path)

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

Команда на вход принимает параметры:
  • php_script_path – путь к хуку (скрипту, обрабатывающему событие начала запроса url с сервера)

После отработки команда возвращает результат своей работы в робот:
  • true – успешно задали хук (type: bool)
  • false – задать хук не удалось (type: bool)



Примеры использования (php)

<?php $xhe_host = "127.0.0.1:7027";
 
// подключим функциональные объекты, если еще не подключен
if (!isset($path))
  $path="../../../Templates/init.php";
require($path);
 
// начало
echo "<hr><font color=blue>raw->".basename (__FILE__)."</font><hr>";
 
$raw->enable_all_streams();
 
// очистим кэш
$browser->navigate("about:blank");
$browser->clear_cache();
 
// 1 шаг
echo "1. Зададим hook (зададим обработку запросов к серверу через begin_transaction_hook1.php (не загружать все что содержит logo + новый заголовок): ";
echo $raw->set_hook_on_begin_transaction("test/begin_transaction_hook1.php");
 
// 2 шаг
echo "\n2. Перейдем :";
echo $browser->navigate("https://www.google.com")."\n";
sleep(7);
 
// 3
echo "3. Перейдем на страницу проверки : ";
echo $browser->navigate("http://httpbin.org/get")."\n";
sleep(7);
 
// 4 шаг
echo "4. Отменим hook :";
echo $raw->set_hook_on_begin_transaction("");
 
// 5 шаг
echo "\n5. Перейдем :";
echo $browser->navigate("https://google.com");
 
// конец
echo "<hr><br>";
 
// Quit
$app->quit();
?>

Примеры использования (cs)

#region using
 
using System;
using System.Diagnostics;
using System.Collections.Generic;
using System.Linq;
using System.IO;
using System.Text;
using System.Threading;
 
using XHE;
using XHE.XHE_DOM;
using XHE.XHE_System;
using XHE.XHE_Window;
using XHE.XHE_Web;
 
#endregion
 
 class Program:XHEScript
 {
	  static void Main(string[] args)
	  {
			// init XHE
			server="127.0.0.1:705";
			InitXHE();
 
			// начало
			echo("<hr><font color=blue>raw.set_hook_on_begin_transaction</font><hr>");
 
			// очистим кэш
			browser.navigate("about:blank");
			browser.clear_cache();
 
			// 1 шаг
			echo("1. Зададим hook (зададим обработку запросов к серверу через begin_transaction_hook1.php (не загружать все что содержит logo + замена ru-Ru на de-DE): ");
			echo(raw.set_hook_on_begin_transaction("test/begin_transaction_hook1.php"));
 
			// 2 шаг
			echo("\n2. Перейдем :");
			echo(browser.navigate("google.com"));
			sleep(2);
 
			// 3 шаг
			echo("\n3. Отменим hook :");
			echo(raw.set_hook_on_begin_transaction(""));
 
			// 4 шаг
			echo("\n4. Перейдем :");
			echo(browser.navigate("google.com"));
 
			// конец
			echo("<hr><br>");
 
			app.quit();            
	  }
}

Примеры использования (js)

// подключим функциональные объекты, если еще не подключен
xhe_host="127.0.0.1:705";
echo=require("../../../Templates JS/init.js");
 
// начало
echo("<hr><font color=blue>raw.set_hook_on_begin_transaction</font><hr>");
 
// очистим кэш
browser.navigate("about:blank");
browser.clear_cache();
 
// 1 шаг
echo("1. Зададим hook (зададим обработку запросов к серверу через begin_transaction_hook1.php (не загружать все что содержит logo + замена ru-Ru на de-DE):");
echo(raw.set_hook_on_begin_transaction("test/begin_transaction_hook1.php"));
 
// 2 шаг
echo("\n2. Перейдем :");
echo(browser.navigate("google.com"));
app.sleep(2);
 
// 3 шаг
echo("\n3. Отменим hook :");
echo(raw.set_hook_on_begin_transaction(""));
 
// 4 шаг
echo("\n4. Перейдем :");
echo(browser.navigate("google.com"));
 
// конец
echo("<hr><br>");
 
// Quit
app.quit();

Примеры использования (py)

# Additional paths
import sys
sys.path.insert(0, '../../../Templates PY/')
 
xhe_host = "127.0.0.1:705"
from xweb_human_emulator import *
 
# начало
echo("<hr><font color=blue>raw.xxxxxxxxx</font><hr>")
 
# очистим кэш
browser.navigate("about:blank");
browser.clear_cache();
 
# 1 шаг
echo("1. Зададим hook (зададим обработку запросов к серверу через begin_transaction_hook1.php (не загружать все что содержит logo + замена ru-Ru на de-DE):");
echo(raw.set_hook_on_begin_transaction("test/begin_transaction_hook1.php"));
 
# 2 шаг
echo("\n2. Перейдем :");
echo(browser.navigate("google.com"));
sleep(2);
 
# 3 шаг
echo("\n3. Отменим hook :");
echo(raw.set_hook_on_begin_transaction(""));
 
# 4 шаг
echo("\n4. Перейдем :");
echo(browser.navigate("google.com"));
 
# конец
echo("<hr><br>")
 
# Quit
app.quit()