我有一個多人遊戲,其中服務器連接兩個客戶端互相對戰。它運作良好。但是,現在我想添加一個歡迎頁面,添加他們的用戶名。我需要將此用戶名發送到服務器。但是,問題是,當加載歡迎頁面時,它會連接到服務器(這很好)。但是,當我想要加載下一頁使用節點JS服務HTML頁面快遞
location.href = "index.html"
它不起作用。事實上,它從服務器斷開連接,並且不會重新連接。如何在玩家點擊按鈕後加載多個文件?我如何將這些文件保存在同一個「客戶端」實例下? (不斷開)。謝謝。
我有一個多人遊戲,其中服務器連接兩個客戶端互相對戰。它運作良好。但是,現在我想添加一個歡迎頁面,添加他們的用戶名。我需要將此用戶名發送到服務器。但是,問題是,當加載歡迎頁面時,它會連接到服務器(這很好)。但是,當我想要加載下一頁使用節點JS服務HTML頁面快遞
location.href = "index.html"
它不起作用。事實上,它從服務器斷開連接,並且不會重新連接。如何在玩家點擊按鈕後加載多個文件?我如何將這些文件保存在同一個「客戶端」實例下? (不斷開)。謝謝。
您是否在Node js中公開您的index.html
文件,以確保您的瀏覽器可以訪問該文件?
我不知道我明白。爲了簡化我的問題,我如何加載另一個html頁面,而不需要從服務器斷開連接? –
既然你沒有代碼,就讓我試一試。爲了擴大在什麼@anderson說,請確保您通過什麼有你的靜態文件提供給您的應用程式,例如
const staticCont = express.static(__dirname + "/public");
其中「公共」,則所有的靜態文件的文件夾目錄。這樣,您的應用程序中的任何鏈接(在前端)都需要加載任何文件。
接下來,假設這樣做了,假設您的遊戲在單個頁面上,可以說"mygame.html
「,如果您希望在此頁面中加載另一個html或其他內容而不會丟失/從」mygame.html
「導航,然後
作爲例子,用戶按下按鈕,你將需要AJAX中要加載的內容:
創建一個虛擬的div會牽着你加載的內容,讓我們把它叫做
<div id="usrBioWrapper"></div>
然後說你的應用程序中有一個按鈕可以提取用戶身份。 讓我們叫這個按鈕 <button id="usrBio">Get user bio</button>
和HTML要加載叫做usrBioPage.html
,那麼你需要這樣的:
$('#usrBio').on('click', function(){
$('#usrBioWrapper').load(' usrBioPage.html ');
});
完蛋了。當用戶點擊按鈕時,它會加載你的內容在該div中。但記住,你必須在你的app.js(後端節點端)設置公共目錄,否則它不會工作。
希望這有助於
這似乎是一個合理的解決方案,謝謝。我還發現,如果我只是將歡迎文件與服務器斷開連接,然後將用戶名sessionstorage存儲在瀏覽器中,並以這種方式檢索信息,它就會起作用。 –
是的,這工作太大聲。希望它有幫助。 – somdow
請出示代碼 – magreenberg
其實我寫出來的問題在這裏太哈哈: https://stackoverflow.com/questions/44428057/nodejs-rooms-not-working-after-redirect 我沒有意識到在這一點上,它沒有工作,因爲該頁面正在從服務器斷開location.href點 –