我有一个由第三方应用程序使用的Web API2应用程序。当应用程序到达我的终点时,我的应用程序会发送oAuth凭据进行身份验证,并从第三方应用程序获取结果。
最近有些交易失败,当我添加一些日志时,我看到错误:远程服务器返回错误:(410)所有失败的交易都发生了Gone 。不幸的是,当我调用我的应用程序时,我无法重现此问题。以下是我正在使用的代码。可能导致此错误的问题是什么?
public async Task<customerModel> SendSigned(string url)
{
customerModel customermodel = null;
try
{
OAuthBase oauthBase = new OAuthBase();
string oAuthKey = ConfigurationManager.AppSettings["oAuthKey"];
string oAuthSecret = ConfigurationManager.AppSettings["oAuthSecret"];
string timestamp = oauthBase.GenerateTimeStamp();
string nonce = oauthBase.GenerateNonce();
string normalizedUrl;
string normalizedRequestParameters;
string sig = HttpUtility.UrlEncode(oauthBase.GenerateSignature(
new Uri(url), oAuthKey, oAuthSecret, string.Empty, string.Empty,
"GET", timestamp, nonce, out normalizedUrl, out normalizedRequestParameters));
string requestUrl = String.Format("{0}?{1}&oauth_signature={2}", normalizedUrl, normalizedRequestParameters, sig);
HttpWebRequest request = null;
request = (HttpWebRequest)HttpWebRequest.Create(requestUrl);
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
myXMLDocument = new XmlDocument();
customermodel = GetCustomerInformation(response);
}
return await Task.Run(() => customermodel);
}
catch (Exception ex)
{
_logger.Error("Error in SendSigned method", ex.InnerException);
return customermodel;
}
}
答案 0 :(得分:0)
410
的解释是 目标资源在原始服务器上不再可用,并且此条件可能是永久的 基于
this链接(类似于404)
我建议您考虑一下您最近对
所做的更改