【问题标题】:How to receive and pass on an HTTP request in PHP如何在 PHP 中接收和传递 HTTP 请求
【发布时间】:2012-02-16 14:53:02
【问题描述】:

我正在尝试使用没有任何文档的 API。我有一个 3rd 方应用程序,当你给它一个用户名、密码和 API 的 URL 时,它会向 API 发送 XML 消息。我需要拦截该消息,对其进行修改并继续发送。 (我不是黑客,我试图让 2 个系统以非默认方式协同工作)。

我可以让系统 A 将消息发送到我自己的网络服务器,并阅读消息。

我看到 $_system 变量中传递的用户名和密码。

密钥:PHP_AUTH_USER;值:MY-USERNAME
键:PHP_AUTH_PW; 值:MY-PASSWORD
键:REQUEST_TIME;值:1327097007

我也可以在 BODY 中看到 XML 消息

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

如何接收我刚刚收到的这条消息并将其原封不动地发送到另一个系统?我对 API 的了解是:

  1. 网址:https://3rd-party-company.com/api/
  2. 我在第 3 方公司的密码:MY-PASSWORD
  3. 我在第 3 方公司的用户名:MY-USERNAME
  4. HTTP 请求正文中的 XML。

如何将它重新发送到它应该去的 URL?

【问题讨论】:

    标签: php xml api http xmlhttprequest


    【解决方案1】:

    您可以使用cURL 来执行此操作。
    基本上,您会在脚本中收到响应,然后创建一个新的并使用 cURL 将其发送到另一台主机。

    【讨论】:

      【解决方案2】:

      只要您的 php 脚本在 Apache 之类的 Web 服务器中运行,就可以让您的 php 脚本接收 HTTP 请求并没有什么特别之处。

      要进行传出 HTTP 调用,您可以使用 file_get_contentsfopenfile 甚至 curl 来更好地控制 HTTP 请求。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-09-25
        • 2013-07-07
        • 1970-01-01
        • 1970-01-01
        • 2014-08-13
        • 1970-01-01
        • 1970-01-01
        • 2011-05-02
        相关资源
        最近更新 更多