Возможно ли, что вызов функции JavaScript на основе запроса PHP CURL - PullRequest
0 голосов
/ 17 ноября 2018

Я хочу вызвать функцию javascript, когда из запроса CURL используется Codeigniter.В основном я хочу вызвать уведомление в браузере, когда данные вводятся в БД.Поэтому, когда ввод данных, я использую запрос CURL и загружаю одну страницу, и на этой странице я хочу вызвать функцию уведомления триггера.Я пробовал ниже, но не работал.

PHP-код для запроса Curl

$post = $_POST;

        $url = str_replace('/ws/'.APP_VERSION,'',site_url('mydomain/notification_update'));
       $ch = curl_init();

        curl_setopt($ch, CURLOPT_URL,$url);
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_POSTFIELDS,$post);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

        $server_output = curl_exec($ch);

        curl_close ($ch);

Другая страница PHP, вызов которой основан на запросе CURL

public function notification_update() {
        $post = $_POST;
        $this->load->view('header', $post, FALSE);

    }

Просмотр страницы

<script type="text/javascript">
        var w_type = '<?= (isset($w_type) && $w_type == 'for_window_noty') ? $w_type : '' ?>';
            console.log('w_type', w_type);
          if(w_type) {
                console.log('succes test');
          }


</script>

Я разместил здесь только код JavaScript для просмотра страницы.

Примечание: мой параметр сообщенияw_type = for_window_noty

1 Ответ

0 голосов
/ 17 ноября 2018

События, отправленные сервером

Использование прослушивателя событий для прослушивания События, отправленные сервером .

При срабатывании покажите свое сообщение.

Он использует источник события

if (!!window.EventSource) {
  var source = new EventSource('stream.php')
} else {
  // Result to xhr polling :(
}

, который вы можете прослушивать

source.addEventListener('message', function(e) {
  console.log(e.data)
}, false)

API WebSockets

Другим способом было быиспользование API WebSockets .

WebSockets позволяет осуществлять двустороннюю связь между клиентом и сервером.

Это происходит за счет того, что его реализация немного сложнее.

...