我正在建設一個PHP客戶端(我已經有一個C#客戶端)作爲概念的證明。 PHP客戶端將使用SOAP連接到相同的.NET服務器。舉例來說,我正在使用遊戲大酒杯。客戶端PHP調用.NET的web服務保持會話信息
現在首先C#客戶端工作得很好,但PHP中存在一個問題。經過多次調試後,我發現PHP總是爲每個遠程服務器調用使用一個新連接。這使得編程遊戲成爲不可能。
舉例來說,我有一個剛剛建立的客戶端這樣的(client.php)PHP文件:
try {
$client = @new soapClient("http://localhost:8000/BlackJack/Service?wsdl",
array(
"trace" => 1,
"exceptions" => 0,
"cache_wsdl" => 0)
);
} catch (Exception $e) {
print 'Caught exception: ' . $e->getMessage() . "\n";
}
然後在我的主文件(生病使用jQuery和AJAX調用動態加載但我現在只是測試)我有以下代碼(blackJackClient.php):
require_once("client.php");
$ini = ini_set("soap.wsdl_cache_enabled","0");
$BetAmountPost = 100;
print_r($result = $client->buttonDeal_Click(array("BetAmount" => (string)$BetAmountPost))->buttonDeal_ClickResult);
print_r($result = $client->PlayerMoney()->PlayerMoneyResult);
第一個電話將開始一個新的遊戲(交易)和他的球員下注的金額(例如100)獲取減去總金額(1000)。所以,我會得到什麼結果中返回的錢= 900
以下突擊隊會問什麼賺錢我現在已經和一個期望得到返回900,但沒有代替我有1000(我的起點金額)。
所以我的問題是我怎麼能讓所有的呼叫都在1個會話中進行,所以我們仍然使用相同的連接?
謝謝!