サードパーティの Web API を呼び出して、サードパーティ側のデータの一部を更新しています。立て続けに 5 件のジョブを送信しましたが、最初の 2 件のリクエストは確実に正常に機能しています。ただし、最後の 3 つは更新されません。アプリケーションは、リクエストがタイムアウトしていることを示しているようですが、自分の側で何かを台無しにしないようにしたいと考えています。
以下の関数を で呼び出しており、API を非同期で呼び出すためにAction<string, Dictionary<string,object>> Delegate
使用しています。BeginInvoke
反応はあまり気にしません。私は何かを誤解WebRequest.GetResponse()
していますか、それともエンドポイントの問題ですか?
private void UpdateJobInfo(string jobId, Dictionary<string, object> updates)
{
var postData = GetJsonEncodedValues(updates);
var request = WebRequest.Create(string.Format(JobResultEndpoint, _username, jobId));
request.ContentType = "application/json; charset=utf-8";
request.Method = WebRequestMethods.Http.Put;
request.Headers[HttpRequestHeader.Authorization] = GetAuthenticationCredentials();
request.GetRequestStream().Write(Encoding.ASCII.GetBytes(postData), 0, Encoding.ASCII.GetBytes(postData).Length);
request.GetResponse();
}