在 CRM Dynamics 365 中获取对 REST API 的请求

GET request to REST API in CRM Dynamics 365

我正在尝试使用 "R" 使用 REST API 和来自 "httr" 包的 GET 请求从我们的 CRM Microsft Dynamcis 365 中提取一个实体 table .

当我直接在浏览器中输入端点 url 时,系统会提示我输入我的 CRM 凭据(用户名和密码),然后我可以在浏览器中查看成功的响应。

当我尝试在 "R" 中执行 GET 请求时,我正在执行以下操作:

username <- <my CRM username>
password <- <my CRM password>
endpoint_url <- "https://<organization name>/XXX/api/data/v8.2/<endpoint>"

GET(endpoint_url, authenticate(username,password,type = "basic"))

当我这样做时,出现以下错误:

HTTP 错误 401 - 未经授权:访问被拒绝

有人可以帮忙吗?

非常感谢。

我认为基本身份验证不适用于 Web API,您需要使用 OAuth。

Authenticate to Dynamics 365 for Customer Engagement with the Web API

When you use the Web API for Customer Engagement or an on-premises Internet-facing deployment (IFD) you must use OAuth as described in Use OAuth to connect to Dynamics 365 for Customer Engagement for apps web Services.

If you’re creating a single page application (SPA) using JavaScript you can use the adal.js library as described in Use OAuth with Cross-Origin Resource Sharing to connect a Single Page Application to Dynamics 365 for Customer Engagement.