humanemulator.net — справка. Продукт, демо и покупка — на хуманэмулятор.рф | Демо | Купить | API | лог изменений
К объекту app

start_rest_service

start_rest_service($path,$port,$host=""); - Создать и запустить REST API, для запуска скрипта с параметрами argv, переданными через POST или GET запросы

API будет доступен по адресу http://<host>:<port>

Функция на вход принимает параметры:

  • $path – Путь REST API
  • $port – Порт REST API, если порт уже занят, то будет использован текущий API
  • $host – Адрес REST API, если пустое значение, то берется из настройки приложения Host

    После выполнения функции возвращаемое значение будет равно одному из двух :
  • true – успешно
  • false – не удалось

    Пример использования
    <?php
    // Scenario: Start a REST service to handle HTTP requests and execute PHP scripts
    $xhe_host = "127.0.0.1:7041";
    if (!isset($path)){
        // Path to init.php file for connecting to the XHE API
        $path = "../../../Templates/init.php";
        // Including init.php grants access to all classes and functionality for working with the XHE API
        require($path);
    }
    
    // beginning
    echo "\n<font color=blue>app->" . basename (__FILE__) . "</font>\n";
    
    // Step 1
    echo "\nStep 1. Set script path for REST service\n";
    $scriptPath = 'D:\User\CSharp\Src XHE\bin\x64\Debug\net48\Test Samples\Window\app\get_version.php';
    
    // Example request: http://localhost:4000/Run?param1=1&param2=2
    // param1, param2 values will be available in argv
    
    // Example 1
    echo "\n\n1. Start REST service\n";
    $port = 4000;
    $startRestServiceResult = WINDOW::$app->start_rest_service($scriptPath, $port);
    if ($startRestServiceResult)
        echo "REST service started successfully\n";
    else
        echo "Failed to start REST service\n";
    
    // Example 2 (commented out)
    // echo "\n\n2. Stop REST service\n";
    // $stopRestServiceResult = WINDOW::$app->start_rest_service("", $port);
    // echo $stopRestServiceResult."\n";
    
    // end
    echo "\n";
    
    // Quit the application
    WINDOW::$app->quit();
    ?>
    # Additional paths
    import sys
    sys.path.insert(0, '../../../Templates PY/')
    
    xhe_host = "127.0.0.1:7040"
    from xweb_human_emulator import *
    
    # начало
    echo("<hr><font color=blue>app.xxxxxxxxx</font><hr>")
    
    path="D:/User/CSharp/Src XHE/bin/x64/Debug/net48/Test Samples/Window/app/get_version.php";
       
    # Пример запроса: http://localhost:4000/Run?param1=1&param2=2
    # значения param1, param2 будут доступны в  argv 
     
    # 1 
    echo("1. Запустим рест сервис : ");
    echo(app.start_rest_service(path,4000),"<br>");
     
    # 2
    #echo("1. Остановим рест сервис : ");
    #echo(app.start_rest_service("",4000)+"<br>");
    
    # конец
    echo("<hr><br>")
    
    # Quit
    app.quit()
    #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 = "localhost:7010";
    			InitXHE();
    
    			// начало
    			echo("<hr><font color=blue>app.set_blink</font><hr>");
    
    			var path="D:/User/CSharp/Src XHE/bin/x64/Debug/net48/Test Samples/Window/app/get_version.php";
    			   
    			// Пример запроса: http://localhost:4000/Run?param1=1&param2=2
    			// значения param1, param2 будут доступны в  argv 
    			 
    			// 1 
    			echo("1. Запустим рест сервис : ");
    			echo(app.start_rest_service(path,4000)+"<br>");
    			 
    			// 2
    			//echo("1. Остановим рест сервис : ");
    			//echo(app.start_rest_service("",4000)+"<br>");
    
    			// конец
    			echo("\n\n");
    
    			app.quit();            
    	  }
    }
    // подключим функциональные объекты, если еще не подключен
    xhe_host="127.0.0.1:7040";
    echo=require("../../../Templates JS/init.js");
    
    // начало
    echo("<hr><font color=blue>app.set_blink</font><hr>");
    
    path='D:/User/CSharp/Src XHE/bin/x64/Debug/net48/Test Samples/Window/app/get_version.php';
       
    // Пример запроса: http://localhost:4000/Run?param1=1&param2=2
    // значения param1, param2 будут доступны в  argv 
     
    // 1 
    echo("1. Запустим рест сервис : ");
    echo(app.start_rest_service(path,4000)+"<br>");
     
    // 2
    //echo("1. Остановим рест сервис : ");
    //echo(app.start_rest_service("",4000)+"<br>");
    
    // конец
    echo("\n");
    
    // Quit
    app.quit();

    =============================================
    App    Объекты    DOM  System  Vision  Web  Window        
    =============================================
    если что-то непонятно или необходимо узнать или считаете что надо добавить по работе этой функции, пишите в комментарии или на наш форум
    .