使用MS Bot Framework与REST API集成

时间:2017-04-25 08:23:06

标签: c# rest api botframework

我正在尝试构建一个可以与REST API集成的机器人。更具体地说,机器人应该根据用户提供的凭据登录API。根据用户提出的某些问题,机器人应该针对API执行某些操作并报告结果。有点像,嘿先生。机器人,我想知道我最近的销售数据'或者'提交我的杰出活动'。 API使用表单身份验证,因此登录后,bot需要将cookie发送到API,否则响应401(来自API)。

这样的事情可能吗?

[更新]

由于我不清楚我的要求(投票),我会延伸我的问题。我想知道机器人是否能够将API所需的cookie传递给它与之通信的客户端。否则,对于API的每个请求,API都会将请求视为未经授权的请求。

谢谢!

1 个答案:

答案 0 :(得分:2)

我不完全确定这是否适用于cookies。也许在WebChat频道中,由于频道的性质,可能工作正常。

我见过的一个常见的模式是通过OAuth通过API进行通信。实现这一点的一个好方法是:在bot中向用户发送一个登录链接,然后回复将回调到您的API,您将基本上恢复与bot的身份验证并将访问令牌存储在bot状态;所以你可以在每次通话时重复使用它。

由于您使用的是C#,我建议您检查AuthBot(通过Microsoft Bot Framework构建的僵尸程序上的Azure Active Directory身份验证的.Net库)。

此外,您可以查看AzureBot以了解如何使用Auth库。