讓我們假設我已經創建了一個簡單的遊戲,它使用了幾個函數,而不是多人遊戲。是否可以從瀏覽器中訪問我編寫的函數定義?用戶是否可以訪問我的網頁的JavaScript的函數定義?
另外我們可以說,例如,有一個函數具有score
參數,並在用戶的分數達到一定數量時向用戶發送「you win」消息。是否有可能通過控制檯使用用戶指定的參數來調用該函數?
如果上述任何一種可能,那我該如何嘗試?
讓我們假設我已經創建了一個簡單的遊戲,它使用了幾個函數,而不是多人遊戲。是否可以從瀏覽器中訪問我編寫的函數定義?用戶是否可以訪問我的網頁的JavaScript的函數定義?
另外我們可以說,例如,有一個函數具有score
參數,並在用戶的分數達到一定數量時向用戶發送「you win」消息。是否有可能通過控制檯使用用戶指定的參數來調用該函數?
如果上述任何一種可能,那我該如何嘗試?
是否可以從瀏覽器中訪問我編寫的函數定義?
是的。
比方說,有一個功能有一個評分參數,如果他的分數達到一定數量,就會向用戶發送一個「你贏」的信息。是否有可能通過控制檯使用用戶指定的參數來調用該函數?
是的。
如果上述任何一種可能,那麼我該如何嘗試它們?
如果函數是全局函數,只需鍵入它的名稱即可。
如果它不是全局的,那麼在有權訪問該函數的作用域中的某個地方設置一個斷點,並執行所需的任何操作來觸發該斷點,然後如上所述。
相關:Prevent Cheating on Javascript Game和What good ways are there to prevent cheating in JavaScript multiplayer games?。
謝謝你的回答和參考資料,它們會非常有幫助。 – VlassisFo
是的,這是可能的。 問題是,你是如何編寫代碼的。
如果你寫的是這樣的:
(function(module, window, document, undefined){
module.public = function(){
//code here
}
function private(){
//code here
}
}((window.play = {}), window, document);
您可以(window.)play.public();
窗口訪問比分功能。沒有必要。 private
功能無法在現場訪問module function
。
如果你的代碼,喜歡你的:
function public(){
//code here
}
function private(){
//code here
}
兩種功能availalbe與public(); private();
。
如何訪問代碼:
如何保護您的代碼:
你試過
@布萊恩我會,但我不知道如何。 – VlassisFo
是的,這是可能的 –