Как получить и передать HTTP-запрос в PHP - PullRequest
0 голосов
/ 23 января 2012

Я пытаюсь использовать API, который не имеет никакой документации.У меня есть стороннее приложение, которое отправляет XML-сообщения в API, когда вы даете ему имя пользователя, пароль и URL-адрес API.Мне нужно перехватить это сообщение, изменить его и отправить дальше.(Я не взламываю, я пытаюсь заставить две системы работать вместе не по умолчанию).

Я могу заставить систему A отправить сообщение на мой собственный веб-сервер и прочитать сообщение.

Я вижу имя пользователя и пароль, переданные в переменных $ _system.

Ключ: PHP_AUTH_USER;Значение: MY-USERNAMEКлюч: PHP_AUTH_PW;Значение: МОЙ ПАРОЛЬКлюч: REQUEST_TIME;Значение: 1327097007

Я тоже вижу сообщение XML в ТЕЛЕ

> <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE enterprise SYSTEM
> "ldisp-2.0.dtd"><enterprise><properties>... [snip]

Как мне принять только что полученное сообщение и отправить его в точности как естьв другую систему?Все, что я знаю об API, это:

  1. URL: https://3rd -party-company.com / api /
  2. Мой пароль от третьей стороны-company: MY-PASSWORD
  3. Мое имя пользователя в сторонней компании: MY-USERNAME
  4. XML, который был в теле HTTP-запроса.

Как я могу отправить его по URL, по которому он должен идти?

Ответы [ 2 ]

1 голос
/ 23 января 2012

Вы можете использовать cURL для этого.
Обычно вы получаете ответ в своем скрипте, а затем создаете новый и отправляете его на другой хост, используя cURL.

0 голосов
/ 23 января 2012

Нет ничего особенного, чтобы ваш php-скрипт получал HTTP-запрос, если ваш php-скрипт работает на веб-сервере, таком как Apache.

Чтобы сделать исходящий HTTP-вызов, вы можете использовать file_get_contents , fopen , file или даже curl для более точного управления HTTP-запросом .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...