Xamarin Android with fitbit api- 添加授权到 header
Xamarin Android with fitbit api- Add Authorization to header
我有一个 xamarin android 应用程序通过其 API 和 xamarin.auth 连接到 fitbit,我有访问令牌,但在尝试获取时收到未经授权的代码json 响应。我已尝试将访问令牌添加到 url,但没有成功。
这是我的代码:
if (e.IsAuthenticated)
{
var request = new OAuth2Request("GET", new System.Uri("https://api.fitbit.com/1/user/-/profile.json?access_token=" + e.Account.Properties["access_token"]), null, e.Account);
request.AccessTokenParameterName = e.Account.Properties["access_token"];
string type = e.Account.Properties["token_type"];
var response = await request.GetResponseAsync();
var json = response.GetResponseText();
}
我不知道如何将授权添加到 OAuth2Request 的 header。
非常感谢任何帮助!
所以我最终添加了自定义请求 class 来扩展 OAuth2Request class 并添加了另一个将访问令牌作为参数的 GetResponseAsync 函数。然后,我将授权添加到 header 并将函数的其余部分保持原样。不确定是否有办法用 Xamarin.Auth 库按原样执行此操作,但它对我有用。
public class CustomRequest : OAuth2Request{ //..
public virtual async Task<Response> GetResponseAsync(string accessToken){//..
httpRequest.Headers.Authorization = new AuthenticationHeaderValue("Bearer", accessToken);
我有一个 xamarin android 应用程序通过其 API 和 xamarin.auth 连接到 fitbit,我有访问令牌,但在尝试获取时收到未经授权的代码json 响应。我已尝试将访问令牌添加到 url,但没有成功。
这是我的代码:
if (e.IsAuthenticated)
{
var request = new OAuth2Request("GET", new System.Uri("https://api.fitbit.com/1/user/-/profile.json?access_token=" + e.Account.Properties["access_token"]), null, e.Account);
request.AccessTokenParameterName = e.Account.Properties["access_token"];
string type = e.Account.Properties["token_type"];
var response = await request.GetResponseAsync();
var json = response.GetResponseText();
}
我不知道如何将授权添加到 OAuth2Request 的 header。
非常感谢任何帮助!
所以我最终添加了自定义请求 class 来扩展 OAuth2Request class 并添加了另一个将访问令牌作为参数的 GetResponseAsync 函数。然后,我将授权添加到 header 并将函数的其余部分保持原样。不确定是否有办法用 Xamarin.Auth 库按原样执行此操作,但它对我有用。
public class CustomRequest : OAuth2Request{ //..
public virtual async Task<Response> GetResponseAsync(string accessToken){//..
httpRequest.Headers.Authorization = new AuthenticationHeaderValue("Bearer", accessToken);