767 messaggi dal 08 aprile 2009
Devo richiamare una api rest che non ha autenticazione e gli devo passare il contenuto della richiesta nel body con il tipo form-data.

Ho provato con postMan e la chiamat è corretta.

Ho provato a tradurlo in c# e nel responso (mi dovrebbe dire data del documento non corretta) mi restituisce vuoto.

Questo è il codice:
 System.Net.Http.HttpClient client = new System.Net.Http.HttpClient();
                  System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));
                  
                    System.Net.Http.MultipartFormDataContent formData = new System.Net.Http.MultipartFormDataContent();
                    foreach (var param in ((Newtonsoft.Json.Linq.JObject)REQUEST_API.DataSend))
                    {
                       formData.Add(new System.Net.Http.StringContent(param.Value.ToString()), param.Key);
                    }

                    System.Net.Http.HttpResponseMessage response = client.PostAsync(REQUEST_API.URL, formData).Result;

                    if (response.StatusCode != System.Net.HttpStatusCode.OK)
                    {
                        await WriteMessageLog($"   ERRORE IN RESPONSE API:  {response.StatusCode} {response.ReasonPhrase}");
                    }
                    response.EnsureSuccessStatusCode();
                    string str_response = await response.Content.ReadAsStringAsync();


Se nella chiave del parametro passo pippo il risultato è sempre lo stesso.
Se non aggiungo nessun item a formData giustamente la chiamata mi risponde che i parametri non sono corretti.

Presumo che il problema sia proprio lì ma non riesco ad uscirne.
Non ho mai chiamato una api con i parametri nel body e con form-data.

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.