Betrachten Sie den folgenden Code, in dem BaseAddressder einen partiellen URI-Pfad definiert.
using (var handler = new HttpClientHandler())
using (var client = new HttpClient(handler))
{
client.BaseAddress = new Uri("http://something.com/api");
var response = await client.GetAsync("/resource/7");
}
Ich erwarte, dass dies eine GETAnfrage an http://something.com/api/resource/7. Aber das tut es nicht.
Nach einigem Suchen finde ich diese Frage und Antwort: HttpClient mit BaseAddress . Der Vorschlag ist, /am Ende des zu platzieren BaseAddress.
using (var handler = new HttpClientHandler())
using (var client = new HttpClient(handler))
{
client.BaseAddress = new Uri("http://something.com/api/");
var response = await client.GetAsync("/resource/7");
}
Es funktioniert immer noch nicht. Hier ist die Dokumentation: HttpClient.BaseAddress Was ist hier los?