メンバーユーザーの一覧取得

グループオーナーとメンバーは、グループメンバーの一覧を次の例のように取得できます。

返却される KiiUser のインスンタンスは ID のみを保持した不完全なインスタンスであることに注意してください。必要に応じて refresh() メソッドを実行して Kii Cloud よりユーザーの最新情報を取得してください。

なお、取得するユーザーとログイン中のユーザーが異なる場合、取得できる情報に制限があります。詳細は ユーザー属性 を参照してください。

グループメンバーの一覧を取得するサンプルコードを以下に示します。

  • function refreshMembers(members, callbacks) {
      var list = members.concat();
      var member = list.shift();
      if (member === void(0)) {
        callbacks.success();
        return;
      }
    
      member.refresh({
        success: function(theUser) {
          refreshMembers(list, callbacks);
        },
        failure: function(theUser, errorString) {
          callbacks.failure(theUser, errorString);
        }
      });
    }
    
    // Get a list of members of the group.
    group.getMemberList({
      success: function(theGroup, memberList) {
        // Refresh the members to retrieve the latest data from Kii Cloud.
        refreshMembers(memberList, {
          success: function() {
            // Do something.
            for (var i = 0; i < memberList.length; i++) {
              var m = memberList[i];
              console.log("DisplayName: %s", m.getDisplayName());
            }
          },
          failure: function(theUser, errorString) {
            // Handle the error.
          }
        });
      },
      failure: function(theGroup, errorString) {
        // Handle the error.
      }
    });
  • function refreshAllMembers(members) {
      var list = members.concat();
      var refreshRecurr = function() {
        var member = list.shift();
        if (member === void(0)) {
          return Promise.resolve(members);
        }
        return member.refresh().then(refreshRecurr);
      };
      return refreshRecurr();
    }
    
    // Get a list of members of the group.
    group.getMemberList().then(
      function(params) {
        var group = params[0];
        var memberList = params[1];
    
        // Refresh the members to retrieve the latest data from Kii Cloud.
        return refreshAllMembers(memberList);
      }
    ).then(
      function(members) {
        // Do something.
        for (var i = 0; i < members.length; i++) {
          var m = members[i];
          console.log("DisplayName: %s", m.getDisplayName());
        }
      }
    ).catch(
      function(error) {
        // Handle the error.
    
        // Get the group for the failed getMemberList() method.
        var thrGroup = error.target;
        // Get the user for the failed refresh() method.
        var theUser = error.target;
        // Get the error message.
        var errorString = error.message;
      }
    );