我们在我们的应用程序中使用超长哈希来注册新用户。问题在于这些哈希在一些电子邮件客户端中断 - 使链接无法使用。Tinyurl API示例 - 我是否正确:D
我试着实现Tinyurl - API,用一个简单的调用,但我认为它有时超时...有时邮件没有到达用户。
我更新了代码,但现在URL永远不会被转换。 Tinyurl真的很慢,还是我做错了什么? (我的意思是嘿,5秒在这个时代很多)
有人可以推荐我一个更可靠的服务吗?
所有的我的错,在fopen中忘了一个错误。但我会离开这里的代码此示例,因为我经常会看到这样的样品,至极我觉得不工作非常可靠:
return file_get_contents('http://tinyurl.com/api-create.php?url='.$u);
这是 - 我想完全工作的样品。我想听听改进。
static function gettinyurl($url) {
$context =
stream_context_create(
array(
'http' => array(
'timeout' => 5 // 5 Seconds should be enough
)
)
);
// get tiny url via api-create.php
$fp = fopen('http://tinyurl.com/api-create.php?url='.$url, 'r', $context); // open (read) api-create.php with long url as get parameter
if($fp) { // check if open was ok
$tinyurl = fgets($fp); // read response
if($tinyurl && !empty($tinyurl)) // check if response is ok
$url = $tinyurl; // set response as url
fclose($fp); // close connection
}
// return
return $url; // return (tiny) url
}
一个例子哈希看起来像这样,总是在160个字符以下。 HTTP:// TESTSERVER/confirmuser键= c040049c01a93e8f7931e8c4b21db8f7:9d60a9aeb 3c853e3f2e099cb16bddc7c:d5c9886cb31f789ae3cdffd55456fe26 – 2010-01-12 16:10:11