【问题标题】:Add group members when creating a group (msgraph-sdk-java)创建组时添加组成员 (msgraph-sdk-java)
【发布时间】:2019-02-16 22:14:34
【问题描述】:

我想在创建群组时将成员添加到群组中。我怎样才能做到这一点?

请求:

POST https://graph.microsoft.com/v1.0/groups
Content-Type: application/json

{
  "displayName": "displayName",
  "mailEnabled": true,
  "mailNickname": "mailNickname",
  "securityEnabled": false,
  "groupTypes": [
    "Unified"
  ],
  "members@odata.bind": [
    "https://graph.microsoft.com/v1.0/users/{userId}"
  ]
}

还有代码:

Group group = new Group();

group.displayName = "displayName";  
group.mailEnabled = true;
group.mailNickname = "mailNickname";
group.securityEnabled = false;    
List<String> groupTypes = new ArrayList<>();
groupTypes.add("Unified");
group.groupTypes=groupTypes;
String userId = "userId";   

//HERE add members to group
//group.members=???

serviceClient.groups().buildRequest().post(group);

我应该如何以及在哪里编写“members@odata.bind”部分?

【问题讨论】:

标签: java azure-active-directory microsoft-graph-api microsoft-graph-sdks


【解决方案1】:

指定成员的一个选项是构造自定义查询

JsonObject groupPayload = new JsonObject();
groupPayload.addProperty("displayName","<value>");
groupPayload.addProperty("mailNickname","<value>");
groupPayload.addProperty("mailEnabled",true);
groupPayload.addProperty("securityEnabled",false);
JsonArray groupTypes = new JsonArray();
groupTypes.add("Unified");
groupPayload.add("groupTypes",groupTypes);

//specify members
JsonArray members = new JsonArray();
members.add(String.format("https://graph.microsoft.com/v1.0/users/%s",userId));
groupPayload.add("members@odata.bind",members);

JsonObject response  = graphClient.customRequest("/groups").buildRequest().post(groupPayload).getAsJsonObject();

【讨论】:

    猜你喜欢
    • 2020-01-11
    • 2020-08-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多