如何检测和处理API HTTP响应代码

本文关键字:API 处理 HTTP 响应 代码 何检测 检测 | 更新日期: 2023-09-27 18:29:29

我正在使用C#控制台应用程序与DotMailer API进行交互。

API返回[this][1]API响应类型列表。

我想知道我怎么可能检测到这些,然后在代码中处理它们?

例如,在下面的代码块中,GetCampaignSummary()的功能可能会由于Invalid_Campaign_Error而失败,这将导致程序跳闸。如何在不让程序因异常而退出的情况下处理此问题?

foreach (var campaign in allCampaigns)
{
    if (campaign.Status == CampaignStatus.Sent)
    {
        if (campaign.Id == 111117)
        {
            var campaignSummaryData = api.GetCampaignSummary(UserName, Password, campaign.Id).DateSent;
            // Insert campaign data
        }
    }
}

有用链接:https://developer.dotmailer.com/docs/error-response-types

如何检测和处理API HTTP响应代码

根据文档,它显然在某个阶段会以HttpWebResponse进行响应。这将允许您简单地执行以下HttpWebResponse.StatusCode

样品:

var request =  WebRequest.Create("...") as HttpWebRequest;
using(var response = request.GetResponse())
{
     if(response.StatusCode != 200)
     {
          // An Error...
     }
}

我相当确定它实现了IDisposable。但是,访问的一般要点是,如果不确定这些对象和变量的type,则很难为您提供帮助。