TECHNOLOGIES
FORUMS
JOBS
BOOKS
EVENTS
INTERVIEWS
Live
MORE
LEARN
Training
CAREER
MEMBERS
VIDEOS
NEWS
BLOGS
Sign Up
Login
No unread comment.
View All Comments
No unread message.
View All Messages
No unread notification.
View All Notifications
Answers
Post
An Article
A Blog
A News
A Video
An EBook
An Interview Question
Ask Question
Forums
Monthly Leaders
Forum guidelines
Eric Bryan
NA
18
7.6k
Random exception on Web service call
Jul 3 2020 3:02 PM
Hello everybody,
I have a Web service which works fine in production environment.
But sometimes (randomly) an exception is raised :
à System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)\r\n
à System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)\r\n
à System.Threading.Tasks.Task`1.get_Result()\r\n
à fctSendRequestSynchrone[T](String sRequest, enumHttpMethod eMethod, Object oParams)\r\n
à API.csRestApi.<SendRequest>d__0`1.MoveNext()"
Here is my code :
.........
//Here is the line which raises the exception :
fctSendRequestSynchrone<
string
>(
string
.Format(
"logs/{0}/message"
, _lIdLog), cs.enumHttpMethod.POST, oLogLigne);
.........
//-------------------------------------------------------------------------------------
private
T fctSendRequestSynchrone<T>(
string
sRequest, csRestApi.enumHttpMethod eMethod,
object
oParams =
null
)
{
Task<T> otask = fctSendRequest<T>(sRequest, eMethod, oParams);
return
otask.Result;
}
//-------------------------------------------------------------------------------------
public
async Task<T> SendRequest<T>(
string
sAction, enumHttpMethod eMethod,
object
oParams =
null
)
{
string
sResponse =
string
.Empty;
T oValue;
using
(var oClient =
new
HttpClient(
new
LogginHandler(_oCnx,
new
HttpClientHandler())))
{
oClient.DefaultRequestHeaders.Accept.Clear();
oClient.DefaultRequestHeaders.Accept.Add(
new
MediaTypeWithQualityHeaderValue(
"application/json"
));
string
sRequest =
string
.Concat(_sUrlApi,
"/"
, sAction);
if
(_oToken !=
null
)
{
oClient.DefaultRequestHeaders.Authorization =
new
System.Net.Http.Headers.AuthenticationHeaderValue(_oToken[
"token_type"
], _oToken
[
"access_token"
]);
}
using
(HttpResponseMessage oResponse = await oClient.PostAsJsonAsync(sRequest, oParams))
{
if
(oResponse.IsSuccessStatusCode)
{
HttpContent content = oResponse.Content;
sResponse = await content.ReadAsStringAsync();
}
else
{
throw
new
RestApiException(oResponse);
}
}
}
oValue = JsonConvert.DeserializeObject<T>(sResponse);
return
oValue;
}
Do you have an idea ?
Thank you very much in advance.
Eric
Reply
Answers (
1
)
A scraping issue on C# scraping project
PIVOT and UNPIVOT in SQL