2016-03-23 3 views
-1

У меня есть и xml-url от поставщика, который динамически генерирует xml-контент с помощью php;Как получить xml-контент, созданный php

http://www.example.com/outputxml/index.php?xml_service_id=161 

Этот url действителен для статического ip, поэтому я дал ему свои веб-сайты, на которых размещен ip-адрес. Есть ли способ открыть этот URL-адрес в браузере с очисткой данных? Потому что у моего интернет-соединения нет статического ip.

спасибо.

Я пробовал под кодом;

$url = 'http://www.example.com/outputxml/index.php?xml_service_id=161?'; 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_POST, true); 
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/xml')); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $xml); 
$result = curl_exec($ch); 
curl_close($ch); 
echo $result; 

Но он дал html-формат.

+0

Вы имеете в виду, что у них есть ACL? Вы можете попробовать и прокси-сервер, запрашивающий ваш сервер. Или вы можете создать веб-страницу на своем сервере, которая отобразит это. – frz3993

+0

Попробуйте 'echo file_get_contents (« http://www.example.com/outputxml/index.php?xml_service_id=161 »);' – frz3993

+0

@ frz3993 Я пробовал этот метод и возвратил пустую страницу. –

ответ

0

Сохраните контент на своем сервере с чем-то вроде wget, а затем подавайте его. Обратите внимание, что вы, вероятно, будете нарушать политику автора xml (я не знаю последствий или самой политики, но вы должны быть осторожны), поэтому вы можете подумать хотя бы добавить аутентификацию .htacces на сервер, чтобы не сделать общедоступным xml.

+0

Я никогда не слышал о wget. Требуется ли для загрузки файлов функции? Автор xml знает, что я ограничу доступ к URL. –

+0

wget - это общая функция для загрузки данных с сервера. Его можно вызвать из командной строки с сервера (если вы не хотите настраивать веб-сервер и знаете, что xml не изменится, я предлагаю сделать именно это, если вы знакомы с 'cron' на Linux, вы может wget страницу время от времени). PHP cURL (который, как я думал, также назывался wget) работает аналогичным образом: http://php.net/manual/en/book.curl.php – frollo

+0

Я отредактировал вопрос с кодом, который я использовал. Он возвратил только html-контент. –

Смежные вопросы