检查用户是否输入了URL

时间:2012-01-30 10:03:17

标签: javascript

我想检查一位访问者是否有一个特定网址(如果他没有,则显示+1按钮)。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

计数中有隐藏的 API,可在以下网址找到:

  

https://clients6.google.com/rpc?key=AIzaSyCKSbrvQasunBoV16zDH9R33D88CeLr9gQ

它希望POST数据采用JSON-RPC格式,因此您需要发送如下请求:

[{
    "method": "pos.plusones.get",
    "id": "p",
    "params": {
        "nolog": true,
        "id": "http://www.mydomain.com/mypage",
        "source": "widget",
        "userId": "@viewer",
        "groupId": "@self"
    },
    "jsonrpc": "2.0",
    "key": "p",
    "apiVersion": "v1"
}]

但是,由于Same-Origin策略,您将无法在JavaScript中使用它。这意味着除非您选择选项2,否则您必须设置服务器端解决方案。

选项2是我在一些自定义社交插件上使用的选项。 http://sharedcount.com提供了一个非常简单的API,如果指定了回调,它会以JSON-P的形式提供结果:

var scr = document.createElement("script");
    myUrl = encodeURIComponent("http://mydomain.com/mypage"),
    apiUrl = "http://api.sharedcount.com/?url="+myUrl+"&callback=shareCounts";

scr.src = apiUrl;
document.body.appendChild(scr);

function shareCounts(data) {
    alert(data.GooglePlusOne);
}