本文整理汇总了C#中HttpHeaders.SetAccessToken方法的典型用法代码示例。如果您正苦于以下问题:C# HttpHeaders.SetAccessToken方法的具体用法?C# HttpHeaders.SetAccessToken怎么用?C# HttpHeaders.SetAccessToken使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类HttpHeaders
的用法示例。
在下文中一共展示了HttpHeaders.SetAccessToken方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ValidateAuthentication
private async Task ValidateAuthentication(ServerInfo server, ConnectionMode connectionMode, ConnectionOptions options, CancellationToken cancellationToken)
{
_logger.Debug("Validating saved authentication");
var url = server.GetAddress(connectionMode);
var headers = new HttpHeaders();
headers.SetAccessToken(server.AccessToken);
var request = new HttpRequest
{
CancellationToken = cancellationToken,
Method = "GET",
RequestHeaders = headers,
Url = url + "/emby/system/info?format=json"
};
try
{
using (var stream = await _httpClient.SendAsync(request).ConfigureAwait(false))
{
var systemInfo = JsonSerializer.DeserializeFromStream<SystemInfo>(stream);
server.ImportInfo(systemInfo);
}
if (!string.IsNullOrEmpty(server.UserId))
{
request.Url = url + "/mediabrowser/users/" + server.UserId + "?format=json";
using (var stream = await _httpClient.SendAsync(request).ConfigureAwait(false))
{
var localUser = JsonSerializer.DeserializeFromStream<UserDto>(stream);
SaveUserInfoIntoCredentials(server, localUser);
OnLocalUserSignIn(options, localUser);
}
}
}
catch (OperationCanceledException)
{
throw;
}
catch (Exception ex)
{
// Already logged at a lower level
server.UserId = null;
server.AccessToken = null;
}
}
示例2: AddAuthenticationInfoFromConnect
private async Task AddAuthenticationInfoFromConnect(ServerInfo server,
ConnectionMode connectionMode,
ServerCredentials credentials,
CancellationToken cancellationToken)
{
if (string.IsNullOrWhiteSpace(credentials.ConnectUserId))
{
throw new ArgumentException("server");
}
if (string.IsNullOrWhiteSpace(server.ExchangeToken))
{
throw new ArgumentException("server");
}
_logger.Debug("Adding authentication info from Connect");
var url = server.GetAddress(connectionMode);
url += "/emby/Connect/Exchange?format=json&ConnectUserId=" + credentials.ConnectUserId;
var headers = new HttpHeaders();
headers.SetAccessToken(server.ExchangeToken);
try
{
using (var stream = await _httpClient.SendAsync(new HttpRequest
{
CancellationToken = cancellationToken,
Method = "GET",
RequestHeaders = headers,
Url = url
}).ConfigureAwait(false))
{
var auth = JsonSerializer.DeserializeFromStream<ConnectAuthenticationExchangeResult>(stream);
server.UserId = auth.LocalUserId;
server.AccessToken = auth.AccessToken;
}
}
catch (OperationCanceledException)
{
throw;
}
catch (Exception ex)
{
// Already logged at a lower level
server.UserId = null;
server.AccessToken = null;
}
}