代码之家  ›  专栏  ›  技术社区  ›  Prabhu Murthi

两台服务器之间的通信

  •  2
  • Prabhu Murthi  · 技术社区  · 14 年前

    有谁能告诉我不使用“nusoap”在两个网站的服务器之间建立通信的其他方法吗?

    5 回复  |  直到 14 年前
        1
  •  1
  •   Alex    14 年前

    如果您谈论的是Web服务,请使用PHP内置 soap extension .

    如果您只想接收其他网站的内容,请尝试 fsockopen , curl 或者php pear扩展 HTTP_Request2

        2
  •  2
  •   Konerak    14 年前

    您可以使用 fopen("http://www.somesite.com/script.php?p1=val1&p2=val2") .

    然后,另一个网站可以使用 $_GET ,并且可以答复(例如在XML中)。然后您可以分析响应。

    如果你想要更多的选择, Curl its libraries 在PHP中不是那么难,可以做更多的事情。

        3
  •  1
  •   Khris    7 年前
    $options = array('http' => array('header'  => "Content-type: application/x-www-form-urlencoded\r\n",'method'  => 'POST','content' => http_build_query($yourData)));
    $context  = stream_context_create($options);
    $result = file_get_contents("www.abc.com", false, $context);
    

    将UR数据发送到另一个服务器到所述URL的HTTP请求。

        4
  •  0
  •   marianboda    14 年前

    有更多的方法可以做到。最简单的选项是通过HTTP进行通信,就好像您正在读取页面的内容一样:

    http://php.net/manual/en/function.file-get-contents.php

    或者对于更高级的任务,可以使用套接字:

    http://php.net/manual/en/book.sockets.php

        5
  •  0
  •   Daniel    14 年前

    您应该将内置的SOAP扩展用于PHP而不是Nusoap。

    至于两台服务器之间的通信,我不确定您要做什么。如果服务器是由您(或您的公司)控制的,那么您应该做的是挂载一个虚拟驱动器,并简单地从挂载中写入/读取文件,这样可以有效地在服务器之间创建通信。可能是比ESB更好的解决方案,尤其是在由您控制的情况下。