httpclient Circular redirect to 'http://xxx.com'



异常信息如下:

[-->org.apache.http.client.ClientProtocolException
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:822)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:754)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:732)
at com.visit.HttpVisit$BasicGetVisit.visiBasic(HttpVisit.java:186)
at com.visit.HttpVisit$BasicGetVisit.visitMain(HttpVisit.java:162)
at com.visit.HttpVisit$BasicGetVisit.run(HttpVisit.java:430)
at java.lang.Thread.run(Thread.java:619)
Caused by: org.apache.http.client.CircularRedirectException: Circular redirect to 'http://hotel.kuxun.cn/zhangjiajie/kelaideng_1.htm'
at org.apache.http.impl.client.DefaultRedirectStrategy.getLocationURI(DefaultRedirectStrategy.java:168)
at org.apache.http.impl.client.DefaultRedirectStrategy.getRedirect(DefaultRedirectStrategy.java:193)
at org.apache.http.impl.client.DefaultRequestDirector.handleResponse(DefaultRequestDirector.java:1021)
at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:482)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:820)
... 6 more
<--]


待完成。。。

在ASP.NET中,你可以使用HttpClient类通过C#来调用Web服务(WebService)。下面是一个示例,展示了如何创建HttpClient实例,设置超时,并传递参数调用指定的WebService: ```csharp using System; using System.Net.Http; using System.Threading.Tasks; // 假设Lot参数是一个字典或类 public class LotParams { public string ParameterName { get; set; } public int ParameterValue { get; set; } } public async Task呼叫Webservice(LotParams lot) { try { // 创建HttpClient实例 HttpClient httpClient = new HttpClient(); // 设置请求超时为10分钟 httpClient.Timeout = TimeSpan.FromMinutes(10); // 构建URL(这里假设你的Lot参数已编码) string url = "http://172.18.16.134:8106/FWWebservice.asmx?op=lotCurrentFlowAll" + $"&{lot.ParameterName}={lot.ParameterValue}"; // 发送GET或POST请求,根据实际WebService的需求选择 HttpResponseMessage response = await httpClient.GetAsync(url); if (response.IsSuccessStatusCode) { // 读取响应内容 string responseBody = await response.Content.ReadAsStringAsync(); // 对响应进行处理 Console.WriteLine(responseBody); } else { Console.WriteLine($"请求失败,状态码:{response.StatusCode}"); } } catch (HttpRequestException ex) { Console.WriteLine($"网络异常:{ex.Message}"); } } ``` 在这个例子中,你需要先构造LotParams对象并将Lot参数设置好,然后将其作为查询字符串的一部分添加到URL中。注意,如果Web服务需要其他认证信息或POST数据,你需要相应地修改发送请求的部分。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值