0

5 つのユーザー ロール ("admin"、"modifier"、"manager"、"projectmanager"、"readonly") があり、特定のロール (ユーザーごとに 1 つのロールのみ) に応じて異なるコードを実行する必要があります。データベースでユーザーとロールをセットアップする前に、それを機能させ、JavaScript で機能をテストしたいと考えています。ユーザー (ハードコードされた値) を正しいロールに「接続」してコードを実行するにはどうすればよいですか?

配列を使用する必要がありますか、それともスイッチケースを使用する必要がありますか?

何かのようなもの:

//Declaration
arrAdmin["user1","user5","user9"];
arrModifier["user3","user6","user8"];
arrManager[];
arrProject["user4"];
arrReadOnly["user2","user7","user10","user11"]
...

function executeFunctionality(user){
var userFound = false;
while(userFound == false){
    for(var i=0; i<arrAdmin.length; i++){
        if(user == arrAdmin[i]){
            userFound = true;
            executeAdmin();
        }
    }
    for(var i=0; i<arrModifier.length; i++){
        if(user == arrModifier[i]){
            userFound = true;
            executeModifier();
        }
    }
    for(var i=0; i<arrManager.length; i++){
        if(user == arrManager[i]){
            userFound = true;
            executeManager();
        }
    }
    //etc...
}
}

それともスイッチケース?

switch(user){
"user1" : executeAdmin();
"user2" : executeReadOnly();
"user3" : executeModifier();
"user4" : executeProject();
"user5" : executeAdmin();
// etc ...
}

前もって感謝します!

4

3 に答える 3

2

JS には誰でもアクセスできるため、そのロジックをサーバー側に配置し、現在のユーザーの役割に従ってコンテンツとスクリプトを配信する必要があります。クライアント側でそれを扱うのは安全ではありません!

于 2013-06-18T09:16:42.320 に答える