1
端口爲5792,ip爲123.123.123.123。我能夠將數據發送到IP,像這樣:創建TCP套接字連接並通過XML請求發送以獲得XML響應?
$host = "tcp://123.123.123.123";
$port = 5792;
$errstr = '';
$errno = '';
$fp = fsockopen($host, $port ,$errno, $errstr, 30);
if (!$fp) {
print 'COULD NOT CONNECT! <br />';
echo "$errstr ($errno)<br />\n";
die();
}
else {
print 'SUCCESS!<br />'
}
發送似乎也工作:
$message = 'hello';
fputs ($fp, $message);
,問題就來接收數據時:
print fread($fp, 128);
這打印:
hello
...到屏幕!換句話說,它迴應了我發送的內容。現在,我知道所有的消息都封裝在一個XML元素中。在這個元素內可以放置一個服務請求,它也被封裝在一個XML元素中。
被封裝的XML元素被稱爲「根」,在這個我可以放置服務請求請求。讓我們調用我正在嘗試完成的實際服務請求「topUp」。
- 假設有一個名爲ROOT的root xml元素,它封裝了服務請求「topUp」,那麼將這個XML作爲字符串提交的標準方式是什麼?
- 當服務器無法理解您所說的內容時,希望迴應您的請求是否正常?
只有當您告訴您連接的服務器類型時,才能回答這兩個問題。如果它是一個HTTP服務器,你可能想看看'cURL'。如果這是自定義的東西,你告訴我們。 – CodeCaster 2012-08-02 08:37:27
這是自定義的,所以我可以安全地假設唯一能告訴我的人是真正的設計師嗎? – coderama 2012-08-02 08:46:36
我改變了我的問題一點... – coderama 2012-08-02 08:50:50