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

How do I load data from a third party database that has its own API (it has an API Search EndPoint) to implement with my azure web app bot?

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

非常感谢任何反馈。

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

该文档中的示例像这样实例化了一个 HTTP 客户端 object,但如果您想在您声明的字段上使用 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

这是一个相当小的示例,不包括授权 headers 等内容。您可以查看 Microsoft.Bot.Connector namespace and especially Conversations.cs 以获取更高级的 HTTP 请求示例。