【发布时间】:2021-10-27 12:13:20
【问题描述】:
我有一个用于存储数据的 API,我正在通过我的 mvc 应用程序使用它。 身份验证过程、存储数据和其他一切工作正常。 问题是我正在尝试处理将来可能发生的一些错误或异常。 其中之一是处理我的应用程序无法连接到我的 web api 并引发错误或将用户引导到其他地方的情况。
我使用 api 的 Web 应用程序控制器:
HttpClient client = new HttpClient();
client.BaseAddress = new Uri("https://localhost:44304");
HttpContent content = new FormUrlEncodedContent(
new List<KeyValuePair<string, string>>
{
new KeyValuePair<string, string>("username", lgv.username),
new KeyValuePair<string,string>("password", lgv.password),
new KeyValuePair<string,string>("grant_type","password"),
});
content.Headers.ContentType = new MediaTypeHeaderValue("application/x-www-form-urlencoded");
content.Headers.ContentType.CharSet = "UTF-8";
/*this is the line where all the parameters get passed and validates everything*/
var resultDisplay = await client.PostAsync("token", content);
/* **************************************************************************** */
if (resultDisplay.IsSuccessStatusCode)
{
var loginData = await resultDisplay.Content.ReadAsAsync<LoginResponseViewModel>();
Session["access_token"] = loginData.Access_Token;
}
所以我尝试的是:
HttpException hc = new HttpException();
switch(hc){
case 200: return view("success"); /* since successful code is 200*/
break;
case 400: return view("error");
break;
}
但它似乎不起作用,因为这段代码只检查应用程序的状态,而不是 api... 所以我的问题是,如果我的 api 没有运行,我该如何处理?
【问题讨论】:
-
哪里有异常代码?您能否显示整个代码,请
-
到目前为止的异常代码只是在用户访问这个api之后处理,它只是处理用户输入是否为空/如果它存在于数据库中等等。我认为没有必要,所以我没有出现。
标签: asp.net .net asp.net-web-api httpexception consuming