最近我看到,当我将链接放在我的个人资料中时,它将其替换为问题的确切标题。所以我想知道,他们是怎么做到的?
我猜他们通过ajax发送链接,然后通过php implode ,explode
创建一个链接头来实现这一点。这是正确的方式/与Stack Overflow相同的方式吗?
答案 0 :(得分:5)
假设我正在粘贴textarea中的上述链接,就像这样
http://stackoverflow.com/questions/12444652/how-to-make-a-link-system-link-stackoverw
这是幕后发生的事情。 GET请求发送到以下URL
http://api.stackexchange.com/2.0/questions/12444652?pagesize=30&key=6AU78DZ)GcdjNjAszYmTLQ((&filter=!6G7RPxWUNTleV&site=stackoverflow.com&callback=apiCallbacks[%22stackoverflow.com%22]&_=1347774461814
该GET的回应是
apiCallbacks["stackoverflow.com"]({"items":[{"question_id":12444652,"title":"How to make a link system link stackoverw"}]});
从那个可以检索标题。希望这会有所帮助。
答案 1 :(得分:4)
我认为这是一个太多的信息,不能发表评论,所以我只是把它作为一个答案。该程序只是简单地检索该页面上title元素的值。
所以这是基本过程:
更新:这是用PHP做第3步的方法:
$myURL = 'http://www.google.com';
preg_match('/<title>(.+)<\/title>/',file_get_contents($myURL),$matches);
$title = $matches[1];
(来自here)