首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >图形API -创建用户时的ResourceNotFound

图形API -创建用户时的ResourceNotFound
EN

Stack Overflow用户
提问于 2022-01-05 01:22:30
回答 2查看 222关注 0票数 0

我已经尝试了几天了,我已经重复检查了所有的例子,并试图搜索我的错误反应,但我无法想出任何东西。

我已经成功地将图形api调用添加到我的应用程序中,当我在/users端点上执行GET时,它会很好地返回我的AD用户,下面的代码就是我尝试创建用户的代码,但是每次我得到ResourceNotFound响应时都会这样做。

值得注意的是,起初我收到了一条错误消息,它没有说明它找不到的资源,但现在错误消息显示“资源”User_不存在.

GUID每次都会发生变化,这意味着它正在创建该对象,然后尝试使用它做一些事情,但是在某个API上失败了。

创建用户功能-

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Public Function CreateUser(user As User) As String
            Dim app As IConfidentialClientApplication = MsalAppBuilder.BuildConfidentialClientApplication(ClaimsPrincipal.Current)
    
            Dim accountId = ClaimsPrincipal.Current.GetMsalAccountId()            
            Dim account = app.GetAccountAsync(accountId).Result           
    
            Dim result As AuthenticationResult
            Dim scopes As String() = {"https://graph.microsoft.com/.default"}
    
            Try
                result = app.AcquireTokenSilent(scopes, account).ExecuteAsync().Result
    
            Catch msalEx As MsalUiRequiredException
                Return msalEx.Message
            Catch ex As Exception
                result = app.AcquireTokenForClient(scopes).ExecuteAsync().Result
            End Try
    
    
            Dim client = New HttpClient()
            Dim request As New HttpRequestMessage(HttpMethod.Post, "https://graph.microsoft.com/v1.0/users")
            request.Headers.Authorization = New AuthenticationHeaderValue("Bearer", result.AccessToken)
    
            Dim json = JsonConvert.SerializeObject(user)
            request.Content = New StringContent(json, Encoding.UTF8, "application/json")
    
            Dim response = client.SendAsync(request).Result
    
            If response.Content IsNot Nothing Then
                Dim responseString = response.Content.ReadAsStringAsync().Result
                Return responseString
            End If
            Return ""
        End Function

我还注意到,这个应用程序从来不包含任何用户,所以范围只标记总是被调用的。

EN

回答 2

Stack Overflow用户

发布于 2022-01-06 03:03:11

试几样东西-

  1. 建议使用相同的令牌和JSON内容,并查看是否可以利用邮递员并调用相同的API来验证您的JSON(请求体)、URL和令牌。
  2. 使用jwt.ms并检查您的令牌是否具有所有必要的声明。
  3. 确保您已经为App.

提供了所需的权限。

如果您仍然面临同样的问题,请使用客户端请求id和时间戳进行恢复,这样我就可以更好地检查它。

谢谢。

票数 0
EN

Stack Overflow用户

发布于 2022-01-06 04:06:12

在这里发布之后,我还请求microsoft支持小组提供帮助。

他们建议我使用图形资源管理器再试一次,所以在做了这两件事之后,我在失眠症中重新发送了我的请求,实际上,当我使用图形资源管理器,仍然使用来自失眠和代码的BadRequest时,我得到了一个成功的响应。

这些请求之间的区别是请求主体。

我最初构建的是使用这里的图文档中提供的代码示例(示例1) - https://learn.microsoft.com/en-us/graph/api/user-post-users?view=graph-rest-1.0&tabs=http

为了节省你的时间,这看起来就像-

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
POST https://graph.microsoft.com/v1.0/users
Content-type: application/json

{
  "accountEnabled": true,
  "displayName": "Adele Vance",
  "mailNickname": "AdeleV",
  "userPrincipalName": "AdeleV@contoso.onmicrosoft.com",
  "passwordProfile" : {
    "forceChangePasswordNextSignIn": true,
    "password": "xWwvJ]6NMw+bWH-d"
  }
}

这就是请求体在图形浏览器中的样子-

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{
        "accountEnabled": true,
        "city": "Seattle",
        "country": "United States",
        "department": "Sales & Marketing",
        "displayName": "Melissa Darrow",
        "givenName": "Melissa",
        "jobTitle": "Marketing Director",
        "mailNickname": "MelissaD",
        "passwordPolicies": "DisablePasswordExpiration",
        "passwordProfile": {
            "password": "b85dba0d-be1b-a59a-8332-6821b138674d",
            "forceChangePasswordNextSignIn": false
        },
        "officeLocation": "131/1105",
        "postalCode": "98052",
        "preferredLanguage": "en-US",
        "state": "WA",
        "streetAddress": "9256 Towne Center Dr., Suite 400",
        "surname": "Darrow",
        "mobilePhone": "+1 206 555 0110",
        "usageLocation": "US",
        "userPrincipalName": "MelissaD@{domain}"
}

在更改代码模型以匹配第二个请求体之后,我现在在代码中获得了成功的响应,并测试了我将旧请求体留在失眠症中的理论,并使用一个新的令牌对请求表示不满,它返回BadRequest,而代码返回成功。

我不能百分之百确定丢失的属性是什么,也许只是密码策略。如果微软给我更多的洞察力,我会在这里更新。

希望这能为其他人提供一些洞察力,因为我自己确实很难找到这方面的信息。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70590440

复制
相关文章
Zend FrameWork之Zend_Db_Table笔记
根据Zend_Db_Table操作数据(也就是在models建立一个对应表的模型) 准备条件: course数据表中有cid课程号,自增,主键,cname课程名称,ccredit课程学分 在models建立Course.php编写Course类继承Zend_Db_Table 写表$_name=’course’;表主键$_primary=’cid’; 1.插入记录操作 要在表中插入一行新数据,只需要将列名:数据的关联数组作为参数,调 用insert()方法即可.(zend framework)会自
苦咖啡
2018/05/08
1.2K0
zend framework项目分组(初级版)
Zend_Controller_Front 控制了Zend_Controller系统的整个工作流。它是前端控制器(FrontController)模型的解释。Zend_Controller_Front处理所有由服务器接收的请求并负责把请求派发给动作控制器 Zend_Controller_Request_Abstract (often referred to as the Request Object)描述请求环境和提供设置和读取控制器和动作名字以及任何请求参数的方法。另外它跟踪它所包含的动作是否被Zend_
苦咖啡
2018/05/08
7730
zend framework项目分组(初级版)
Zend FrameWork 配置文件(初级版)
[production] ;命名空间配置以及自动命名空间注册 autoloadernamespaces[] = “Zend_” autoloadernamespaces[] = “Paper_” appnamespace = “Application” ;运行时设置 phpSettings.display_startup_errors = 1 phpSettings.display_errors = 1 phpSettings.DATE.timezone =”Asia/Shanghai”
苦咖啡
2018/05/08
6090
nginx+php-fpm配置zend framework
server { listen 80; server_name 192.168.1.187; root /var/www/html/public; index index.php; #charset utf-8; location ~* \.(js|ico|gif|jpg|png|css|jpeg|swf)$ { access_log off; expires 2d; } location / { if (!-f $request_filename) { rewrite ^(.+)
苦咖啡
2018/05/08
1.2K0
Zend FrameWork程序员来看看
1.php文件格式 只有php代码的文件结尾不允许出现?>结束 缩进要用4个空格而不是用tab 每行代码长度在80~120字符 2.命名约定 类名只允许使用数字字母字符(不建议使用数字),eg;Zen
苦咖啡
2018/05/07
9420
PHP官方框架 Zend Framework 2.1 发布
Zend Framework (简写ZF)是由 Zend 公司支持开发的完全基于 PHP5 的开源PHP开发框架,可用于开发 Web 程序和服务,ZF采用 MVC(Model–View-Controller) 架构模式来分离应用程序中不同的部分方便程序的开发和维护。
魏杰
2022/12/23
4880
PHP官方框架 Zend Framework 2.1 发布
jquery插件与扩展
要说jQuery 最成功的地方,我认为是它的可扩展性吸引了众多开发者为其开发插件,从而建立起了一个生态系统。这好比大公司们争相做平台一样,得平台者得天下。苹果,微软,谷歌等巨头,都有各自的平台及生态圈。
诺浅
2020/08/21
2.3K0
Zend Framework 配置404、500页面
$application->bootstrap() ->run(); 修改项目index.php中代码如下 try { $application->bootstrap() ->run(); } catch (Exception $e) { switch ($e->getCode()) { case 500: { if (!(include_once ‘404.html’))
苦咖啡
2018/05/08
9410
Flutter - 将 Flutter 集成到现有项目(iOS - Framework篇)
用 Flutter 来开发,从来都不可能是新开的一个纯 Flutter 项目,很大一部分都是 老项目接入 Flutter 来混编。
Flutter笔记
2020/06/17
4.4K0
Flutter - 将 Flutter 集成到现有项目(iOS - Framework篇)
jquery---data
elem.data(object);//object为{key:value};
sucl
2019/08/07
4450
The jQuery UI CSS Framework
jQuery UI是 jquery官方推出的配合jquery使用的用户界面组件集合!包含了许多的界面操作功能,如我们常用的表格排序,拖拽,TAB选项卡,滚动条,相册浏 览,日历控件,对话框等 JS插件~~可以很方便的开发用户界面上的功能,使得您的开发工作事半功倍~~不用写繁琐的JS代码。 jQuery UI提供了一个强大的CSS Framework,为用户定义使用jQuery widgets。其中的ThemeRoller更是让你随心所欲地操作设计不同风格的网页界面。 jQuery UI是一套基于jquery
张善友
2018/01/19
2.3K0
Zend Framework自动加载、简单路由配置(Bootstrap.php)
<?php class Bootstrap extends Zend_Application_Bootstrap_Bootstrap { /* * 自动加载 */ protected fun
苦咖啡
2018/05/08
9230
jQuery 插件
​ jQuery 功能比较有限,想要更复杂的特效效果,可以借助于 jQuery 插件完成。 这些插件也是依赖于jQuery来完成的,所以必须要先引入
梨涡浅笑
2022/05/08
7.1K0
jQuery 插件
jQuery.prop , jQuery.attr ,jQuery.data
jquery.prop 获取匹配的元素中第一个元素特定的属性值,或者是设置多个元素的属性值。
_淡定_
2018/08/24
3.8K0
【JQuery】JQuery入门——JQuery 插件-validation
validate 是 jQuery 插件,及必须在 jQuery 的基础上进行运行。我们将导入 jQuery 库、 validate
陶然同学
2023/02/27
12.3K0
【JQuery】JQuery入门——JQuery 插件-validation
jQuery 插件
jQuery 功能比较有限,想要更复杂的特效效果,可以借助于 jQuery 插件完成。 这些插件也是依赖于jQuery来完成的,所以必须要先引入
清出于兰
2020/10/26
6.9K0
jQuery 插件
jQuery——插件
        简单来说:“jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(框架)于2006年1月由John Resig发布。jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互
用户10196776
2022/11/22
14.9K0
Flink DataStream API与Data Table API/SQL集成
在定义数据处理管道时,Table API 和 DataStream API 同样重要。
从大数据到人工智能
2022/02/24
4.3K0
JQuery插件
1.页面 @{ ViewBag.Title = "Index"; Layout = "~/Views/Shared/_Layout.cshtml"; } <ul id="ul"> <li>第一行</li> <li>第二行</li> <li>第三行</li> <li>第四行</li> <li>第五行</li> <li>第六行</li> </ul> <ul id="ul2"> <li>第一行</li> <li>第二行</li>
用户1055830
2018/01/18
4K0
jQuery 插件
jQuery 功能比较有限,想要更复杂的特效效果,可以借助于 jQuery 插件完成。
星辰_大海
2020/10/09
6.7K0
jQuery 插件

相似问题

Webhook XML始终为空

114

XML节点始终为空

20

Xml按钮字段值始终为空。

30

C# XML值始终为空

52

Express JS发送数组始终为空。

22
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文