我订阅了Dynamics 365试用版。我可以从Office 365连接到Internet Explorer中的CRM服务的URL,如下所示:
https://myorg.crm4.dynamics.com
我也可以访问Odata作为:
https://myorg.crm4.dynamics.com/api/data/v8.2/accounts
我尝试使用Postman连接到Odata服务。我在azure中创建了一个应用程序,具有crm权限,如here所述
我得到一个access_token
,所以这确保了资源是有效的。
我尝试使用此有效的access_token
对资源进行GET请求,但 Postman 使用401 Unauthorized
进行响应
我读了几十页,但没有帮助。我怀疑(但不确定)odata服务可能不能在开发人员的试用版中使用。
问题:
为什么我得到这个错误,虽然我有一个有效的access_token,我错过了什么?
使用试用许可证时,Odata服务不可用吗?
1条答案
按热度按时间tktrz96b1#
我在通过WebAPI从中间件客户端连接到MS Dynamics 365 CRM时也遇到了类似的问题,情况如下:
1.我测试了与PostMan的连接,它工作得很好-我使用了授权代码和密码凭据授予类型方法。
1.当我将连接配置移植到目标中间件应用程序时,我们发现授权代码授予类型对我们无效,因为它要求用户在我们的情况下登录。
1.我配置了Password Credentials授权类型,它消除了手动干预用户帐户的签名。
1.我成功获得了Auth Token,但对安全资源的API调用引发了401错误。这真的很麻烦,并导致阅读所有的支持和故障排除文章/博客/视频。
1.我对我的应用程序进行了根本原因分析,我们发现我们收到的令牌没有正确发送,应用程序在令牌字符串中添加了一些额外的空格,这导致了401问题。
我们修剪了令牌变量并修复了问题和Boom!!
因此,有时故障排除应该端到端地完成,重点是微小的组件,特别是当我们通过网络调用API时。
请随时联系任何帮助或查询。
干杯!
401 unauthorized #D365-Integration-WebAPIs #OAuth2.0