我正在創建一個客戶端 - 服務器遊戲。我的客戶端是基於Flex的遊戲,我的服務器是erlang服務器。 開始時,當我直接在Flash Player中測試我的Flex客戶端時,我可以通過套接字連接輕鬆地建立與我的erlang服務器的連接。兩者都可以交換數據,沒有問題。Flex插座和erlang插座通信問題
當我在Apache http服務器上部署我的flex應用程序並使用瀏覽器通過調用http://localhost/運行它時,問題就出現了......我的flex套接字向我的erlang服務器發送請求跨域策略的消息。
因此,我創建了一個表示跨域策略的xml消息,並將其作爲該請求的響應發送回我的flex應用程序。
然而,我仍然無法在我的Flex客戶端和我的erlang服務器之間建立任何永久套接字連接。我知道這是因爲我在我的Flex套接字上添加了監聽器,如果客戶機 - 服務器之間的連接已經建立,它將修改其內部狀態爲CONNECTED。
首先,你爲什麼將Flex用於遊戲?看起來像矯枉過正,爲可能只有很少UI的遊戲添加了一個UI框架庫(我在這裏假設......)。其次,爲什麼您使用自己的自定義套接字而不是使用廣泛可用的東西(AMF over long-polling(BlazeDS,GraniteDS)或RTMP(LCDS)),或者使用市售服務器(如Wowza或SmartFoxServer)。看起來像創建自己的套接字很多工作。 –
如果你問我爲什麼要創建我自己的遊戲服務器......答案不是商業......但更多的是情感:) ... –
好吧,好吧,那你爲什麼使用Flex? –