使用Typescript react应用程序在Dataverse中创建一条记录



我正在寻找一个解决方案,从typescript应用程序和所有有关授权等信息在Dataverse中创建记录。

我找到了一个化名包裹https://www.npmjs.com/package/dynamics-web-api

我需要知道这会起作用吗?如果是,还有关于这个主题的更多信息吗?或者有人做过吗?

我正在使用,但我得到了一个错误与这段代码:

try{
//call any function
const responseDyn = async () => {
await dynamicsWebApi.executeUnboundFunction('WhoAmI');
}
console.log(`Hello Dynamics 365! My id is: ${responseDyn.UserId}`);
}
catch (error){
console.log(error);

它说UserId在类型Promise(void(上不存在——它怎么知道呢,因为它还没有json。

您得到的错误是一个代码错误,与Dataverse无关。尝试将所有内容封装在异步箭头函数中,或者使用then((。

(async () => {
const responseDyn = await dynamicsWebApi.executeUnboundFunction('WhoAmI');
console.log(`Hello Dynamics 365! My id is: ${responseDyn.UserId}`);
})();

接下来,从react应用程序与Dataverse对话是完全可能的,但要克服的第一个挑战是向Azure&Dataverse,并获取一个令牌以包含在您的web请求中。

请参阅此处了解有关所需身份验证的解释,然后参阅此处了解所有详细说明&代码示例创建一个Azure应用程序,然后使用MSAL.js(Microsoft身份验证库(进行身份验证。

您正在查看的github库是第三方库,而不是官方库。github页面解释说,库不为您处理身份验证。该库没有错,只是指出了它,因为您可能更喜欢先使用标准的fetch HTTP请求。请参阅Dataverse Web Api文档。

最后,在Dataverse模型驱动的应用程序/画布应用程序中使用web api不需要身份验证,因为在这些情况下,您已经登录

最新更新