如何从httpresponsemessage获取串行的URL?
有没有办法从响应中获取完全序列化的URL地址?
给定下面的请求,我想获取以下字符串: http://192.168.0.72:8080/manufacturer
如果可能的话。实际上,这是发送到服务器的URL - 但这不是我可以提取的。
此示例的范围有限,因为它没有证明查询参数的用法 ,但是使用 baseaddress
的用法确实意味着URI添加到
getAsync < EM>并不总是是发送到服务器的实际URL。许多事情可以在它的过程中操纵它。
例如,如果我要将查询参数传递 {“ search”:“ test”,“ locale”:“ en-us”}
中,我希望能获得 https://192.168.0.72:8080/manufacturer?search=test&amp;locale = en-us
。
public static HttpClient InitializeHttpClient() {
var client = new HttpClient();
client.BaseAddress = new Uri("http://192.168.0.72:8080/");
client.Timeout = TimeSpan.FromSeconds(3);
client.DefaultRequestHeaders.Add(
"User-Agent", "My App Name"
);
return client;
}
private static readonly HttpClient Client = Helpers.InitializeHttpClient();
HttpResponseMessage response = await Client.GetAsync("manufacturer");
Stream content = await response.Content.ReadAsStreamAsync();
string url = response?.RequestMessage.RequestUri.ToString(); // "manufacturer"
作为参考,我是在dotnet 6.0上运行Xamarin形式的,建立在Android上。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论