get number of comments in yammer feed

2019-09-19 07:22发布

I am trying to get the number of comments for a yammer feed.

I used the below query

jQuery.getScript("https://c64.assets-yammer.com/assets/platform_js_sdk.js",function(){
console.log("script loaded");
  var commentCnt = 0;
      yam.platform.request(
          { url: "https://www.yammer.com/api/v1/messages/open_graph_objects/"+ogID+".json"
          , method: "GET"
          , data: {"body": "This Post was Made Using the Yammer API.  Welcome to the Yammer API World."}
          , success: function (msg) {
                    if (msg) {
                        jQuery.each(msg.messages, function (index, element) {
                            commentCnt++;
                        });
                    }
                    //adds the count to the webpage.
                    jQuery("div#commentCnt").text(commentCnt);
                }
          , error: function (msg) { 
                        //console.log("message lookup failed");
            }
      });
});

this returned

XMLHttpRequest cannot load http://myApiUrl/. No
'Access-Control-Allow-Origin' header is present on the requested
resource. Origin 'null' is therefore not allowed access

How can this be resolved? I also tried using api.yammer.com instead of www.yammer.com

1条回答
成全新的幸福
2楼-- · 2019-09-19 08:20

Yammer CORS error are mostly due to missing JS origins. You'd need to define data-app-id in your code. Looks like that's missing from your snippet...

data-app-id="YOUR-APP-CLIENT-ID" 

data-app-id, is the app_id of your registered app and ensure JS origin is in place.

Also, instead of using jQuery.getScript(), I'd suggest you call the script in the header section of your HTML page like this:

<script type="text/javascript" data-app-id="YOUR-APP-CLIENT-ID" src="https://c64.assets-yammer.com/assets/platform_js_sdk.js"></script>
查看更多
登录 后发表回答