2015-05-15 18 views
7

Sto provando a impostare intestazioni personalizzate su una richiesta HttpClient.DeleteAsync. Ho provato conCome impostare le intestazioni per DeleteAsync

httpClient.DefaultRequestHeaders.Add("X-Parse-Application-Id",ParseAppID); 

ma ottengo questo errore

Misused header name. Make sure request headers are used with HttpRequestMessage, response headers with HttpResponseMessage, and content headers with HttpContent objects. 

HttpClient.SendAsync possono inviare richiesta personalizzato intestazioni con

System.Net.Http.HttpRequestMessage.Headers.Add("X-Parse-Application-Id",ParseAppID); 

e HttpClient.PostAsync li può inviare con

System.Net.Http.StringContent.Headers.Add("X-Parse-Application-Id",ParseAppID); 

Come posso fare t il suo con DeleteAsync?

+0

io non sono in grado di riprodurre questo. Il codice [qui] (https://gist.github.com/mattwcole/5124b49cd9efec4bd7eb) funziona senza problemi per me. Sei arrivato a fondo? –

risposta

1

istanziare un HttpRequestMessage e utilizzare SendAsync invece:

var request = new HttpRequestMessage(HttpMethod.Delete, requestUri); 
request.Headers.Add("X-Parse-Application-Id", ParseAppID); 

using (var response = await _calendarClient.SendAsync(request).ConfigureAwait(false)) 
{ 
    if (response.StatusCode.Equals(HttpStatusCode.NotFound)) 
    { 
     return; 
    } 
    response.EnsureSuccessStatusCode(); 
} 
Problemi correlati