如何捕捉异常'ex'给出http响应
本文关键字:http 响应 给出 ex 何捕捉 异常 | 更新日期: 2023-09-27 18:13:19
我想捕获前。所以,我可以返回错误代码值
有人能帮我吗?
public string Decrypt(string cipherText, string sid)
{
RNCryptor.Decryptor D = new Decryptor();
string DecryptedString = "";
int errcode = 0;
if (Prod == false)
{
DecryptedString = cipherText;
}
else
{
try
{
DecryptedString = D.Decrypt(cipherText, sid + SigningKey);
}
catch (Exception ex)
{
// i want to return errcode 601 to give my response to HTTP
}
}
return DecryptedString.Trim();
}
这是我的另一个代码:
if (ErrCode < 0)
{
string errMessage = "Decrypt error";
return Content((HttpStatusCode)(ErrCode * (-1)),errMessage);
}
这是我的解密方法使用的地方
public dynamic GetPikachu(string sid, FormDataCollection form)
{
string StrPikachu = Decrypt(form.Get("pikachu"), sid);
return JsonConvert.DeserializeObject<dynamic>(StrPikachu);
}
在Decrypt方法中做你想做的最简单的方法是抛出:
throw new HttpResponseException((HttpStatusCode)601);
然而最简单的往往不是正确的方法。你可以修改:
public string Decrypt(string cipherText, string sid)
bool TryDecrypt(string cipherText, string sid, out string result)
,在异常处理程序中返回false。然后在控制器中处理该值