Создать XMLHTTPRequest из php - PullRequest
       34

Создать XMLHTTPRequest из php

1 голос
/ 08 ноября 2019

Я настраиваю небольшой веб-сервис (локальная локальная сеть) для печати некоторых данных на термопринтере Epson с ePOS. У них есть отличная документация о том, как отправить XML-запрос из JavaScript, но моя проблема в том, что я хочу, чтобы сервер печатал данные из базы данных, поэтому в нем нет javascript.

Мне нужно «перевести» этот JavaScriptк php, где req - это запрос:

var xhr = new XMLHttpRequest();
xhr.open('POST', url, true);
xhr.setRequestHeader('Content-Type', 'text/xml; charset=utf-8');
xhr.setRequestHeader('If-Modified-Since', 'Thu, 01 Jan 1970 00:00:00 GMT');
xhr.setRequestHeader('SOAPAction', '""');
xhr.onreadystatechange = function () {

   // Receive response document
   if (xhr.readyState == 4) {

      // Parse response document
      if (xhr.status == 200) {
         alert(xhr.responseXML.getElementsByTagName('response') [0].getAttribute('success'));
      }
      else {
         alert('Network error occured.');
      }
   }
};

xhr.send(req);

Я уже пробовал это:

$opts = array('http' =>
    array(
        'method'  => 'POST',
        'header'  => ["Content-type: text/xml; charset=utf-8", "If-Modified-Since: Thu, 01 Jan 1970 00:00:00 GMT", "SOAPAction: ''"],
        'content' => $content
    )
);
# Create the context
$context = stream_context_create($opts);
# Get the response (you can use this for GET)
$result = file_get_contents($url, false, $context);

Но, похоже, не работает.

Я попробую с curl , но почему-то я не понимаю, как правильно установить заголовки и как отправлять данные ...

Может кто-нибудь помочь мне

...