Xamarin Android with fitbit api-添加授权到头部

问题描述 投票:0回答:1

我有一个xamarin android应用程序,通过他们的API和xamarin.auth连接到fitbit,我有访问令牌,但当试图GET 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的头中添加授权。

任何帮助都是非常感激的

c# android xamarin.android fitbit xamarin.auth
1个回答
0
投票

所以我最终添加了一个自定义请求类来扩展OAuth2Request类,并添加了另一个GetResponseAsync函数,该函数将访问令牌作为参数。然后我将授权添加到头,其余的函数保持原样。不知道Xamarin.Auth库是否有办法用现在的方式来实现,但对我来说是可行的。

public class CustomRequest : OAuth2Request{ //..
    public virtual async Task<Response> GetResponseAsync(string accessToken){//..
    httpRequest.Headers.Authorization = new AuthenticationHeaderValue("Bearer", accessToken);
© www.soinside.com 2019 - 2024. All rights reserved.