HttpClient PostAsync to Blogger API

Ste*_*nes 4 c# rest blogger oauth dotnet-httpclient

我使用以下API来允许我与Google Blogger进行互动.我需要在用户博客中插入帖子.但是我的PostAsync功能有问题.我得到401告诉我,尽管有API密钥,我的请求仍未获得授权,但我认为我可能无法正确插入我的OAuth令牌.

我有以下代码,

这是我设置授权标题的代码,(注意密钥有假,但与我认为的OAuth令牌相同)

httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("ya29.AHES6ZTBZi1dWPVdlcF7qAD-nSM6XxwY2323232m4lXW");
Run Code Online (Sandbox Code Playgroud)

这是我的PostAsync功能

                HttpResponseMessage response = await req.PostAsync(URLs.postBlogURL + blogID + URLs.postBlogURLPost, new StringContent(json));
Run Code Online (Sandbox Code Playgroud)

谁能告诉我哪里出错了?干杯.

[ 更新 ]

我不确定授权是否必须在其中包含字符串承载.

    httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer ya29.AHES6ZTBZi1dWPVdlcF7qAD-nSM6XxwY2323232m4lXW");
Run Code Online (Sandbox Code Playgroud)

Sco*_*ott 25

这就是我能够为我的请求获取正确的OAuth auth标头集的方法:

httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue( "Bearer", _accessTokenWrapper.Token.access_token );
Run Code Online (Sandbox Code Playgroud)

构造函数的第一个参数是用于Authorization标头的方案.所以在请求中,标题为:

Authorization: Bearer {the access token string}
Run Code Online (Sandbox Code Playgroud)