在C#中使用Google Blogger API v3

时间:2015-05-31 15:41:32

标签: c# blogger

我一直在使用Google Blogger API v2,使用GDATA进行身份验证和发布新帖子。但是,现在不再支持此功能,并且它们需要OAuth身份验证。 不幸的是我找不到任何我完全理解的.Net文档。 我尽可能地跟着他们,我没有看到任何错误,所以我不知道还有什么可以尝试,请帮助我。

我的第一个方法就是这样:Google.GData.Client.GDataRequestException - Authentication suddenly fails in old code 这里给出了Google Spread Sheets的示例。但是,我不知道用什么来替换“var service = new SpreadsheetsService(null)”这一行,因为我不知道是否有Blogger服务。

在第二种方法中,我首先获得了像之前一样的OAuth2令牌,然后遵循https://developers.google.com/blogger/docs/3.0/using?hl=de关于发布帖子的描述。所以我创建了一个WebRequest,如下所示:

var http = (HttpWebRequest)WebRequest.Create(new Uri(baseAddress));
        http.Accept = "application/json";
        http.ContentType = "application/json";
        http.Method = "POST";
        http.Headers.Add("Authorization", "Bearer " + token); 

        var vm = new { kind = "blogger#post", blog = new { id = "id" }, title = "Testtitle", content = "testcontent" };
        var dataString = JsonConvert.SerializeObject(vm);
        string parsedContent = dataString;
        ASCIIEncoding encoding = new ASCIIEncoding();
        Byte[] bytes = encoding.GetBytes(parsedContent);

        Stream newStream = http.GetRequestStream();
        newStream.Write(bytes, 0, bytes.Length);
        newStream.Close();

        var response = http.GetResponse();

        var stream = response.GetResponseStream();
        var sr = new StreamReader(stream);
        var content = sr.ReadToEnd();

但是在这里,我得到了403(不允许)。为什么呢?

提前致谢! 最好,奥利弗

0 个答案:

没有答案