天天看點

ulua熱更新自定義伺服器出現問題的解決方案

1 啟動服務的時候出現 “指定的網絡名格式無效” 的問題

原先一直是拿本機用ulua做熱更測試 是以熱更的時候沒有出現什麼問題

然後我把以前的 simpleframework (也是熱更新架構)中的 Server 中的兩個 cs 檔案(HttpServer HttpService)放到了伺服器的 photon 上

 然後啟動伺服器的同時啟動 HttpServer

在 HttpServer 中的 host 改為:http://(你的伺服器ip):(你的端口 這裡用6688)/

這樣在啟動的時候會報錯 :指定的網絡名格式無效

把ip換成原來的 localhost 就可以  後來上網搜尋 找到了問題

将 host 改為 http://+:(你的端口)/

這樣就好使了  有時候可能出現這個ip已經在本機監聽注冊過了   這個應該是你之前啟動服務這個的時候還沒有完全關閉 

等一會然後重新開機服務一下就可以了 

host 中 如果把 + 換成 * 也好使 

2 用戶端連接配接服務端的時候傳回 資訊是 404 錯誤(需要 log 一下能看到)

這個問題有很多原因  我隻列出我遇到的

由于 1 問題 中修改了 host 是以長度發生了改變

在 HttpServer.cs 代碼中

OnGetRequest()函數裡有這麼一句

string url = request.Url.ToString().Remove(0, host.Length - 1);

後面的第二個參數參數是 host 的長度  是以是這裡發生了問題

這裡可以自行修改  我是寫死的 ip :

 string url = request.Url.ToString().Remove(0, ("http://" + ip + ":" + port + "/").Length - 1);(這裡的 ip 和 port 都是你伺服器的 ip 和 port)