JSONP获取Twitter和Facebook文章数的具体步骤

 更新时间:2014年02月24日 15:20:14   作者:  
这篇文章主要介绍了JSONP获取Twitter和Facebook文章数的方法,需要的朋友可以参考下
原文是使用的Twitter和Facebook,因为国内被强,所以我觉得有用的是里面一个获取JSONP的那个工具类.

我很头疼的是,许多流行的 APIs 已经要求身份验证才能获取信息。

既然我可以访问到这些页面并取得信息,那为什么我不使用一些简单的代码来获取并跳过验证这一步呢?
我认为Twitter和Facebook要求身份验证来获取文章的数量,但事实证明你可以通过JSONP来获取这些信息。请参考下面的步骤。

The JavaScript

我将使用基本的JavaScript来告诉你如何做到这一点:
复制代码 代码如下:

// 获取文章数量的封装对象
var socialGetter = (function() {
/* JSONP: 获取脚本的工具函数 */
function injectScript(url) {
var script = document.createElement('script');
script.async = true;
script.src = url;
document.body.appendChild(script);
}

return {
getFacebookCount: function(url, callbackName) {
injectScript('https://graph.facebook.com/?id=' + url + '&callback=' + callbackName);
},
getTwitterCount: function(url, callbackName) {
injectScript('http://urls.api.twitter.com/1/urls/count.json?url=' + url + '&callback=' + callbackName);
}
};
})();

// 回调方法
function twitterCallback(result) {
result.count && console.log('The count is: ', result.count);
}
function facebookCallback(result) {
result.shares && console.log('The count is: ', result.shares);
}

// 调用
socialGetter.getFacebookCount('http://davidwalsh.name/twitter-facebook-jsonp', 'facebookCallback');
socialGetter.getTwitterCount('http://davidwalsh.name/twitter-facebook-jsonp', 'twitterCallback');

因为有众多轻量级的 micro-frameworks来处理JSONP,所以本文最重要的部分可能是获取信息的url了。根据需要和习惯选择你的JSONP工具!

Twitter和Facebook对于这些请求肯定有数量和频率上的限制,所以如果你的网站访问量很大,则JSONP很可能会被拦截或屏蔽. 一种快速的解决方案是将文章数量信息存储在sessionStorage中,但这只是针对单个用户的方式。如果你运行的网站流量较大,你最好选择在服务器端抓取数据并缓存下来,并在一定的时间内自动刷新。

相关文章

  • javascript一元操作符(递增、递减)使用示例

    javascript一元操作符(递增、递减)使用示例

    javascript一元操作符递增、递减想必大家并不陌生吧,下面与大家分享下使用方法,有详细学习的朋友可以了解下,希望对大家有所帮助
    2013-08-08
  • Bootbox将后台JSON数据填充Form表单的实例代码

    Bootbox将后台JSON数据填充Form表单的实例代码

    通过控制器创建一个Index视图,写入下列HTML代码,这里我创建了一个分部视图,不创建直接写在同一个页面也是一样的效果。这篇文章主要介绍了Bootbox将后台JSON数据填充Form表单 ,需要的朋友可以参考下
    2018-09-09
  • Vue考试系统的后台管理功能开发示例解读

    Vue考试系统的后台管理功能开发示例解读

    这篇文章主要介绍了Vue考试系统后台管理项目的登录、记住密码功能具体实现流程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-09-09
  • JS时间戳转换为常用时间格式的三种方式

    JS时间戳转换为常用时间格式的三种方式

    我们在开发中经常需要把时间戳转化成日期格式,下面这篇文章主要给大家介绍了关于JS时间戳转换为常用时间格式的三种主要方式,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-04-04
  • javascript js 操作数组 增删改查的简单实现

    javascript js 操作数组 增删改查的简单实现

    下面小编就为大家带来一篇javascript js 操作数组 增删改查的简单实现。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-06-06
  • 微信小程序 (地址选择1)--选取搜索地点并显示效果

    微信小程序 (地址选择1)--选取搜索地点并显示效果

    这篇文章主要介绍了微信小程序 (地址选择1)--选取搜索地点并显示效果,实现思路是通过拖动地图,搜索地址,选择地址并将地址值传给文本框,具体实例代码跟随小编一起看看吧
    2019-12-12
  • javascript模拟实现计算器

    javascript模拟实现计算器

    这篇文章主要为大家详细介绍了javascript模拟实现计算器,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-04-04
  • JavaScript 九种跨域方式实现原理

    JavaScript 九种跨域方式实现原理

    这篇文章主要介绍了JavaScript 九种跨域方式实现原理,什么是跨域,以及有哪几种跨域方式,这是本文要探讨的内容。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-02-02
  • 微信小程序使用map组件实现路线规划功能示例

    微信小程序使用map组件实现路线规划功能示例

    这篇文章主要介绍了微信小程序使用map组件实现路线规划功能,结合具体实例形式分析了微信小程序基于map组件的地理位置获取、路径规划等相关操作技巧,需要的朋友可以参考下
    2019-01-01
  • JS正则表达式获取分组内容的方法详解

    JS正则表达式获取分组内容的方法详解

    这篇文章主要介绍了JS正则表达式获取分组内容的方法,有需要的朋友可以参考一下
    2013-11-11

最新评论