无法使用具有中文字符Json数据的Azure Active Directory B2C Graph API创建新用户

时间:2019-02-15 07:07:50

标签: c# azure azure-active-directory azure-ad-b2c azure-ad-graph-api

我正在尝试使用AAD B2C图形API创建用户。当有效载荷Json是英文字符时,它可以正常工作,但是如果我创建带有中文字符的Json有效载荷,则会失败。

Json有效载荷:

    {
  "passwordProfile": {
    "password": "Abc1234@#",
    "forceChangePasswordNextLogin": false
  },
  "signInNames": [
    {
      "type": "emailAddress",
      "value": "abc@gmail.com"
    }
  ],
  "accountEnabled": true,
  "creationType": "LocalAccount",
  "displayName": "林",
  "mailNickname": "林",
  "passwordPolicies": "DisablePasswordExpiration"
}

错误详细信息:

  

“消息”:“发生一个或多个错误。(调用图形时出错   API:\ n {\ r \ n \“ odata.error \”:{\ r \ n \“ code \”:   \“ Request_BadRequest \”,\ r \ n \“ message \”:{\ r \ n \“ lang \”:   \“ en \”,\ r \ n \“ value \”:\“为属性指定的值无效   资源'User'的'mailNickname'。\“ \ r \ n},\ r \ n \” requestId \“:   \“ b2d0d3bf-394d-4ebd-a5b5-d905f1809c19 \”,\ r \ n \“ date \”:   \“ 2019-02-15T06:55:06 \”,\ r \ n \“值\”:[\ r \ n {\ r \ n
  \“ item \”:\“属性名称\”,\ r \ n \“值\”:\“邮件昵称\” \ r \ n   },\ r \ n {\ r \ n \“ item \”:\“ PropertyErrorCode \”,\ r \ n
  \“ value \”:\“ InvalidValue \” \ r \ n} \ r \ n] \ r \ n} \ r \ n})“

请帮助我解决问题。

1 个答案:

答案 0 :(得分:2)

您需要指定错误所指定的mailNickname:

{
  "givenName": "会话",
  "surname": "宋",
  "mail": "abc@gmail.com",
  "city": "TestCity",
  "state": "hebei",
  "country": "china",
  "postalCode": "1245",
  "mobilePhone": "12345678",
  "mailNickname": "abc",
  "accountEnabled": true,
  "displayName": "displayname-here",
  "passwordProfile": {
    "password": "PasswordHere",
    "forceChangePasswordNextLogin": true
  },
  "userPrincipalName": "abc@gmail.com"
}

我还包括了文档中提到的其他属性。

您可以在此处查看参考:https://docs.microsoft.com/en-us/previous-versions/azure/ad/graph/api/users-operations#create-a-user-work-or-school-account--