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

我现在正在玩Javascript …我正在缩小一些使用bit.ly来推特的URL,然后我开始思考一个自动化流程,它可以使用他们的API缩小我想要的URL,然后我看了他们的文档,我看到他们只支持PHP(有一些Javascript),但无论如何,我只能使用Javascript吗?

下面是如何使用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); }); 

从开发人员最佳实践页面上点点滴滴:

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

对通过客户端Javascript进行的有点API的任何请求都会导致OAuth令牌或API密钥被泄露的风险,但您可以采取一些步骤来部分缓解此风险。 最重要的是,永远不要在页面中包含你的api_key或access_token。 在页面中包含的外部javascript文件中包含的代码中保留对api_key或access_token的任何引用。 为了提高安全性,请不要将密钥或令牌本身包含在javascript代码中的任何位置,而是进行ajax调用以加载它,并将其保存在存储在私有范围方法中的变量中。 有关此实现的示例,请参阅我们的示例html和包含的javascript文件。

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

http://code.google.com/p/bitly-api/wiki/ApiDocumentation

通过XmlHttpRequest,例如:

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