1. bit
Bit.ly
is a great URL
shortening service. I love their reliability, shortness of the URL, and
the information they provide about a given URL. Recently Bit.ly
updated their API to version 3 so I thought I'd update my original Bit.ly post
. Here's how you can create short URLs and expand short URLs using Bit.ly.
<?php
/* returns the shortened url */
function get_bitly_short_url($url,$login,$appkey,$format='txt') {
$connectURL = 'http://api.bit.ly/v3/shorten?login='.$login.'&apiKey='.$appkey.'&uri='.urlencode($url).'&format='.$format;
return curl_get_result($connectURL);
}
/* returns expanded url */
function get_bitly_long_url($url,$login,$appkey,$format='txt') {
$connectURL = 'http://api.bit.ly/v3/expand?login='.$login.'&apiKey='.$appkey.'&shortUrl='.urlencode($url).'&format='.$format;
return curl_get_result($connectURL);
}
/* returns a result form url */
function curl_get_result($url) {
$ch = curl_init();
$timeout = 5;
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
$data = curl_exec($ch);
curl_close($ch);
return $data;
}
/* get the short url */
$short_url = get_bitly_short_url('http://*****.name/','id','xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx');
/* get the long url from the short one */
$long_url = get_bitly_long_url($short_url,'id','xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx');
?>
All you really need to is pass your appkey and login (you must sign
up for their API service), the long or short URL, and the format which
you'd like the result to be returned in. If you just want a simple URL
with no other information, use the default "txt" format. Retrieving the
XML or JSON formats will provide you more information about the URL.
Bit.ly is awesome. I mean, Twitter uses them — what more of an endorsement would you need.
另一个是google的
是根据goo.gl URL Shortener的插件修改成PHP版本的..
include('GoogleShorter.class.php');
$g = new GoogleShorter();
echo $g->getURL('http://www.skiyo.cn/');
下载地址:
http://goo.gl/Ot5Z
或 见附件
分享到:
相关推荐
2)....Important: File layout was changed for BDS 2006+. Delphi and C++ Builder files are now located in StudioNum folders instead of old DelphiNum and CBuilderNum folders. Update your search paths if ...
这个库提供了一套全面且强大的API,允许开发者高效、安全地进行URL解析、构建、修改以及验证等操作。在C++程序中,与URI和URL相关的任务通常涉及字符串操作,而Boost.URL库则为这些任务提供了高级抽象,避免了底层的...
有点Ruby gem,用于使用版本4 缩短链接,扩展短链接并查看用户,链接和...创建一个API客户端所有API方法都可以通过Bitly::API::Client 。 用访问令牌初始化客户端,如下所示: client = Bitly :: API :: Client . new
3. `settings.py`:项目配置文件,定义了数据库连接、应用列表、中间件等设置。 4. `urls.py`:全局URL配置,将URL映射到对应的视图函数。 5. `models.py`:定义数据库模型,如商品、用户、订单等实体。 6. `views....
为了使用这个库,开发者首先需要将项目导入到他们的Go项目中,然后调用提供的API来处理文本。例如,一个简单的用法可能是读取一个文本文件,然后使用xurls库找出所有的URL: ```go package main import ( "fmt" ...
3. myedu(或其他项目名):Django项目的主应用,包含模型(models.py)、视图(views.py)、URL配置(urls.py)和模板(templates/)。 4. settings.py:配置 Django 项目,包括数据库设置、中间件、应用注册等。 5...
38581 principal URLs, e.g. www.delicious.com for http://www.delicious.com, http://www.delicious.com/tag, http://www.delicious.com/help/api 7668 bi-directional user relations, i.e. 15328 (user_i, ...
jfreechar中文api JFreeChart 是一个功能强大且流行的 Java 图形解决方案,提供了多种类型的图表,满足各种图形需求。该库的核心类库主要由两个包组成:org.jfree.chart 和 org.jfree.data,其中 org.jfree.chart ...
同样,`getTemporaryPath()`函数获取Documents目录的URL,然后在其下创建一个名为"tmp"的子目录,并返回其路径。 接下来,我们详细了解一下Library和tmp目录的作用: **Library目录:** Library目录主要存储应用的...
bannerLayout.setViewUrls(urls); //设置加载器 bannerLayout.setImageLoader(new GlideImageLoader()); //添加点击监听 bannerLayout.setOnBannerItemClickListener(new BannerLayout.OnBannerItemClickListener...
5. 源码结构:Graduation Design文件夹很可能是项目源代码的存放位置,其中包括Django项目的各个部分,如views.py(视图函数),models.py(数据模型),urls.py(URL路由),templates(HTML模板)等。此外,还有...
**基于Django3.x的RESTful API风格的项目模板** 在现代Web开发中,REST(Representational State Transfer)已经成为设计API的主流规范,它强调资源的表述和状态转移,而Django作为Python的一个强大框架,提供了...
3. **Documents目录**: 存储用户生成或应用需要长期保存的数据。 4. **Library/Caches**: 用于存放临时文件,这些文件在应用不运行时可以被系统清理。 5. **tmp目录**: 存放临时文件,应定期清理。 为了实现全面的...
3. **编码信息**:描述了媒体文件的编码格式,有助于VLC选择正确的解码器。 4. **播放参数**:如循环播放、延迟播放、缓冲区大小等,这些参数能影响播放体验。 5. **元数据**:关于媒体文件的信息,如标题、艺术家、...
urls=[ ‘http://www.baidu.com', ‘http://www.amazon.com', ‘http://www.ebay.com', ‘http://www.alibaba.com', ‘//www.jb51.net' ] start=time.time() forurlinurls: printurl resp=urllib2....
3. **管理分类**:论坛的分类是组织内容的关键,管理者可能需要创建、更新和删除分类,这涉及到了Django的模型关系操作,如多对多或一对多关系。 【标签】提到的“Python”是Django的基础,作为解释型、面向对象的...
标题中的"ShortURL"是一个基于Django框架开发的应用程序,它的主要功能是将长网址缩短,以提供易于分享和记忆的短链接,类似于知名的"bit.ly"服务。这个应用程序旨在提高网址的可分享性和便捷性,尤其是在社交媒体、...
- 使用`NSDictionary`或`NSArray`创建要保存的数据结构。 - 调用`writeToFile:atomically:`方法将数据写入到指定路径的.plist文件中。例如,对于字典,可以这样操作: ```swift let dataToSave = ["key1": ...
标题中的 "This is a class to get the folders and urls of the IE" 表明这是一个用于获取Internet Explorer(IE)浏览器的收藏夹和URL的程序。在IT领域,这通常涉及到编程,特别是与Windows操作系统相关的API调用...