首页 > 解决方案 > 如何从具有自己的 API(它具有 API 搜索端点)的第三方数据库加载数据以使用我的 azure Web 应用程序机器人实现?

问题描述

第一次发帖。如何从具有自己的 API (REST API) 的第三方数据库加载数据,该数据库具有 API 搜索端点以使用我的 azure Web 应用程序机器人实现?我所需要的只是从数据库中获取搜索功能(用户在第三方网站的搜索栏中输入查询,并通过从网站用来从中获取信息的数据库中提取数据来向用户显示相关结果。 ) 我需要用我用 C# 开发的 azure webapp bot 来实现这个搜索功能。目前我的网络机器人也使用了 QnA 制造商。

非常感谢任何反馈。

标签: c#restbotframeworkazure-bot-serviceqnamaker

解决方案


您可能会查看此文档:https ://docs.microsoft.com/en-us/aspnet/web-api/overview/advanced/calling-a-web-api-from-a-net-client

该文档中的示例像这样实例化一个 HTTP 客户端对象,但您是否要static在声明的字段上使用或任何其他修饰符取决于您:

static HttpClient client = new HttpClient();

您可以看到 HTTP 客户端用于 GET 请求,如下所示:

static async Task<Product> GetProductAsync(string path)
{
    Product product = null;
    HttpResponseMessage response = await client.GetAsync(path);
    if (response.IsSuccessStatusCode)
    {
        product = await response.Content.ReadAsAsync<Product>();
    }
    return product;
}

重要的部分是client.GetAsyncresponse.Content.ReadAsAsync

这是一个相当简单的示例,不包括授权标头等内容。您可以查看Microsoft.Bot.Connector命名空间,尤其是Conversations.cs,了解更高级的 HTTP 请求示例。


推荐阅读