本文整理汇总了C#中ApiClient.GetUrl方法的典型用法代码示例。如果您正苦于以下问题:C# ApiClient.GetUrl方法的具体用法?C# ApiClient.GetUrl怎么用?C# ApiClient.GetUrl使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ApiClient
的用法示例。
在下文中一共展示了ApiClient.GetUrl方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetResult
public async virtual Task<string> GetResult(ApiClient client) {
var url = this.BuildUrl(client.GetUrl(this));
using (var handler = new HttpClientHandler() {
UseCookies = this.WithCookies,
AllowAutoRedirect = !this.NeedLoginFirst
})
using (HttpClient hc = new HttpClient(handler)) {
try {
var msg = await hc.GetAsync(url);
//只有 AllowAutoRedirect 为 false 时,才会捕捉到 Headers.Location
if (this.NeedLoginFirst && msg.Headers.Location != null && msg.Headers.Location.Host.Equals("passport.lagou.com")) {
this.ErrorType = ErrorTypes.NeedLogin;
await this.PrepareLoginCookie(url);
return "";
} else
return await msg.Content.ReadAsStringAsync();
//GetStringAsync 会把 302 当作异常抛出
//return await hc.GetStringAsync(url);
} catch (Exception ex) {
var bex = ex.GetBaseException();
this.ErrorType = bex.HResult.ToString().ParseErrorType();
this.Message = bex.Message;
return "";
}
}
}
示例2: GetResult
public async virtual Task<string> GetResult(ApiClient client) {
try {
var url = this.BuildUrl(client.GetUrl(this));
HttpClient hc = new HttpClient();
return await hc.GetStringAsync(url);
} catch (HttpRequestException ex) {
var bex = ex.GetBaseException();
var o = new {
Message = new {
messageval = bex.HResult.ToString(),
messagestr = bex.Message
}
};
return JsonConvert.SerializeObject(o);
} catch (WebException ex1) {
var bex = ex1.GetBaseException();
var o = new {
Message = new {
messageval = bex.HResult.ToString(),
messagestr = bex.Message
}
};
return JsonConvert.SerializeObject(o);
}
}
示例3: GetResult
public async virtual Task<string> GetResult(ApiClient client) {
try {
var url = this.BuildUrl(client.GetUrl(this));
using (var handler = new HttpClientHandler() {
//CookieContainer = client.Cookies,
UseCookies = this.WithCookies
})
using (HttpClient hc = new HttpClient(handler)) {
return await hc.GetStringAsync(url);
}
} catch (Exception ex) {
var bex = ex.GetBaseException();
this.ErrorType = bex.HResult.ToString().ParseErrorType();
this.Message = bex.Message;
this.HasError = true;
return "";
}
}