Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
仅使用Javascript使用Bit.ly API收缩URL_Javascript_Jquery_Api_Url Shortener_Bit.ly - Fatal编程技术网

仅使用Javascript使用Bit.ly API收缩URL

仅使用Javascript使用Bit.ly API收缩URL,javascript,jquery,api,url-shortener,bit.ly,Javascript,Jquery,Api,Url Shortener,Bit.ly,这几天我在玩Javascript。。。我用bit.ly缩小了一些URL,然后我开始考虑一个自动化的过程,可以使用他们的API缩小我想要的URL,然后我查阅了他们的文档,我发现他们只支持PHP(带有一些Javascript),但无论如何,我可以只使用Javascript实现这一点?根据Javascript的执行位置,您可以始终使用bit.ly REST API: 例如,通过XmlHttpRequest: http://api.bit.ly/v3/shorten?login=bitlyapidem

这几天我在玩Javascript。。。我用bit.ly缩小了一些URL,然后我开始考虑一个自动化的过程,可以使用他们的API缩小我想要的URL,然后我查阅了他们的文档,我发现他们只支持PHP(带有一些Javascript),但无论如何,我可以只使用Javascript实现这一点?

根据Javascript的执行位置,您可以始终使用bit.ly REST API:

例如,通过XmlHttpRequest:

http://api.bit.ly/v3/shorten?login=bitlyapidemo&apiKey=R_0da49e0a9118ff35f52f629d2d71bf07&longUrl=http%3A%2F%2Fbetaworks.com%2F&format=json

下面是一个如何使用Bitly API和jQuery获得缩短的URL的示例,不需要服务器端代码

function get_short_url(long_url, login, api_key, func)
{
    $.getJSON(
        "http://api.bitly.com/v3/shorten?callback=?", 
        { 
            "format": "json",
            "apiKey": api_key,
            "login": login,
            "longUrl": long_url
        },
        function(response)
        {
            func(response.data.url);
        }
    );
}
以下代码可用于获取短URL:

/*
Sign up for Bitly account at
 https://bitly.com/a/sign_up

and upon completion visit
https://bitly.com/a/your_api_key/ 
to get "login" and "api_key" values
*/
var login = "LOGIN_HERE";
var api_key = "API_KEY_HERE";
var long_url = "http://www.kozlenko.info";

get_short_url(long_url, login, api_key, function(short_url) {
    console.log(short_url);
});
从bitly的开发者页面:

为了确保API密钥和/或OAuth访问令牌的安全性,我们强烈建议您尽可能向bitly API服务器端发出请求

通过客户端Javascript对bitly API发出的任何请求都会带来OAuth令牌或API密钥被泄露的风险,但是您可以采取一些步骤来部分缓解这种风险。最重要的是,不要在页面中内联包含api_密钥或access_令牌。在包含在页面中的外部javascript文件中的代码中保留对api_密钥或access_令牌的任何引用。为了增加安全性,不要让密钥或令牌本身包含在javascript代码中的任何地方,而是通过ajax调用加载它,并将其保存在存储在私有范围方法中的变量中。有关此实现的示例,请参阅我们的示例html和包含的javascript文件


但是我如何将缩短的URL放入变量中以自由使用它呢?有几种方法可以轻松做到这一点——一种是简单地使用JQuery支持JSON远程请求解析,并将较大结果中的答案提取到变量中。例如,请参阅。如果我错了,请更正我,但这意味着任何人都可以访问您的个人,私有API密钥——也就是说,如果我查看了你的页面的源代码,我可能会劫持你的帐户并用BS缩短的URL填充它。API密钥和密钥不是一回事。您不能隐藏客户端JavaScript API的任何API键,因为源代码是可用的。但API提供者可以检查引用者URL是否与注册过程中提供的URL匹配。