Make Google Plus post through .NET (C#)

2019-02-20 10:34发布

问题:

Good day all.

Does anyone has a working example how to make Google Plus post through .NET (C#).

I have already tried google and stackoverflow search, but did not manage to find the solution.

I successfully get posts:

    public void Post(string text)
    {
        PlusService plus = new PlusService {Key = "MYVERYSECRETKEY"};

        ActivitiesResource ar = new ActivitiesResource(plus, null);

        ActivitiesResource.ListRequest list = ar.List("108055870103885325249", new ActivitiesResource.Collection());
        ActivityFeed feed = list.Fetch();

        string activityKey = "";
        foreach (var a in feed.Items)
            if (a.Url == "https://plus.google.com/108055870103885325249/posts/EtvvUgn8eKz")
            {
                activityKey = a.Id;
                break;
            }

        ActivitiesResource.GetRequest get = ar.Get(activityKey);
        Activity act = get.Fetch();
        var sb = new System.Text.StringBuilder();
        sb.AppendLine("Title: " + act.Title);
        sb.AppendLine("URL:" + act.Url);
        sb.AppendLine("Published:" + act.Published);
        sb.AppendLine("By:" + act.Actor.DisplayName);
        sb.AppendLine("Annotation:" + act.Annotation);
        sb.AppendLine("Content:" + act.Object.Content);
        sb.AppendLine("Type:" + act.Object.ObjectType);
        sb.AppendLine("# of +1s:" + act.Object.Plusoners.TotalItems);
        sb.AppendLine("# of reshares:" + act.Object.Resharers.TotalItems);
    }

But I cannot find any method for making posts.

Thanks in advance.

回答1:

Currently, the Google+ API does not allow writing of posts to a user's activity stream. You can use the moments.insert method in the Google+ REST API to write App Activities to the user's profile, which the user can choose whether to share publicly or to their circles.

You would work with the REST API in a similar manner to other REST APIs in .NET by POSTing to the moments.insert end-point.

This feature is now available to apps that request the https://www.googleapis.com/auth/plus.login scope and specify the type of moments that the app wants to write in the request_visible_actions parameter either in the Google+ Sign-In button or directly in the OAuth query parameters.