Как опубликовать в Blogger через Google API в C # - PullRequest
3 голосов
/ 28 июня 2011

Я создал метод обновления моего Blogger с помощью Google API (самая новая версия) в C #.Я нашел некоторые решения, но у меня ошибка при запуске приложения.Есть кодовая строка, которую я не могу выполнить.Эта часть кода находится в try {}, но сообщения об исключении нет, и код в catch {} не запускается.Я не могу понять, в чем проблема.У меня есть 2 решения для тестирования, но ни одно из них не работает для меня.Пожалуйста, помогите мне выяснить, в чем проблема, я пытаюсь решить ее в течение нескольких дней ...

Извините за мой английский, я надеюсь, что вы можете понять мою проблему.1 и № 2.

public static bool AddPost(string title, string bodyHTML, string[] labels, string username, string password, string blogurl)
    {
        Service service = new Service("blogger", "Updater");
        service.Credentials = new GDataCredentials(username, password);
        AtomEntry newPost = new AtomEntry();
        newPost.Title.Text = title;
        newPost.Content = new AtomContent();
        newPost.Content.Content = bodyHTML;
        newPost.Content.Type = "html";
        foreach (string label in labels)
        {
            AtomCategory cat = new AtomCategory();
            cat.Scheme = new Uri("http://www.blogger.com/atom/ns#");
            cat.Term = label;
            newPost.Categories.Add(cat);
        }
        AtomEntry response = null;
        try
        {
            #1------------------------------------------------------
            Uri blogFeedUri = new Uri("http://www.blogger.com/feeds/" + "BLOG_ID" + "/posts/default");
            response = service.Insert(blogFeedUri, newPost);

            #2------------------------------------------------------
            response = service.Insert(new Uri(blogurl + "feeds/posts/default"), newPost);
        }
        catch (GDataRequestException exception)
        {
            if (exception.ResponseString == "Blog has exceeded rate limit or otherwise requires word verification for new posts")
            {
                return false;
            }
            else
            {
                throw exception;
            }
        }
        if (response == null)
        {
            throw new Exception("Something went wrong");
        }
        return true;
    }

1 Ответ

2 голосов
/ 19 августа 2011

Я полагаю, что вы заменяете "BLOG_ID" числовыми строками в вашем коде, ... Uri blogFeedUri = new Uri ("http://www.blogger.com/feeds/" +" BLOG_ID "+" / posts / default ");

правый

...