HttpClient调用webApi时注意的小问题

解决HttpClient使用中URI路径拼接问题
本文探讨了在使用HttpClient进行API调用时,关于URI路径拼接的常见问题,特别是对于路径中出现的斜杠(/)的正确处理方式。通过实例展示了如何避免路径错误拼接导致的问题,并提供了URI路径正确拼接的方法。

HttpClient client = new HttpClient();

client.BaseAddress = new Uri(thisUrl);

client.GetAsync("api/xx/xx)时

在new Uri的时候:

  当thisUrl格式如http://xxxx:xx/xxService/时 实际调用地址是:http://xxxx:xx/xxService/api/xx/xx

  当thisUrl格式如http://xxxx:xx/xxService时 调用地址就变成了:http://xxxx:xx/api/xx/xx

这个/的蛋疼可想而知。。。

同时一直有个习惯就是在写GetAsync("api/xx/xx)时的时候习惯写成GetAsync("/api/xx/xx)老是习惯多写个/但实际返回的结果还是http://xxxx:xx/api/xx/xx。。

主要是无意调API的时候蛋疼的遇到了个这么个问题。。

实际拼接的方式就是:

Uri uri1=new Uri(thisUrl);

Uri uri2=new Uri(uri1,"xxx");

具体内部实现下班回家在看看- -

转载于:https://www.cnblogs.com/ylsforever/p/4997880.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值