Любой способ получить ссылку на t.co из Twitter? - PullRequest
3 голосов
/ 10 июля 2011

Я хочу опубликовать несколько версий одной и той же ссылки в Твиттере, но хочу захватить их с уникальными идентификаторами, когда они попадают на мой сервер.

Twitter частично разработал механизм для этого, например, если я отправлю www.example.com в твиттер-сообщение, Twitter автоматически преобразует его в пользовательский URL-адрес, начинающийся с t.co с помощью перенаправления 301.

дополнительная информация: Обертывание ссылки Twitter

Я хочу перехватить этот перенаправленный URL-адрес, чтобы у меня был уникальный идентификатор для похожих ссылок в Twitter.

Есть ли способ сделать это? Или есть лучший способ справиться с этой проблемой?

(Я ищу решение на PHP / JS или, если нужно, любым возможным способом с любым языком)

РЕДАКТИРОВАТЬ: Ссылка должна быть точно такой же в Twitter, не может иметь параметры запроса или хэш в ссылке.

РЕДАКТИРОВАТЬ 2: Дополнительные исследования, ссылка t.co останется прежней, если это тот же URL-адрес ссылки, приписываемой тому же профилю. Например, две ссылки www.example.com в одном и том же профиле Twitter приведут к одной и той же ссылке t.co, но ссылка t.co будет другой, если она приписана к другому профилю. Я предполагаю, что это означает, что даже если есть обходной путь для вышеупомянутой проблемы, все еще нет никакого способа дифференцировать точно такие же ссылки на той же стороне сервера профиля Twitter.

EDIT3 12/26/11 также интересно то, что t.co различает http:// и https, так что теоретически вы можете «отобразить» две одинаковые ссылки в одном профиле и они будут выглядеть одинаково в Твиттере, но ссылка на перенаправление t.co будет другой. Он будет ссылаться на версии http и https.

  • В конечном итоге, я пытаюсь выяснить, твит i.d из ссылающейся ссылки, которая попадает на мой сервер, не прибегая к параметрам URL.

Ответы [ 3 ]

2 голосов
/ 10 июля 2011

Вам нужно будет установить какой-нибудь параметр get

page.php? Referer = twitter

и проверить его как

<?php
if ($_GET['referer'] == "twitter")
{
    //do stuff
}
1 голос
/ 10 июля 2011

Я думаю, что наиболее надежный способ сделать это - поделиться каждой ссылкой с каким-то собственным идентификатором.

Например,

  • www.domain.com / page-1? ref = 1
  • www.domain.com / page-1? ref = 2
  • и т. д.

Вы можете легко реализовать отслеживаниедля параметра ref в PHP или любом другом языке, который вы хотите.

0 голосов
/ 31 июля 2011

t.co не переносит исходный реферер.Таким образом, вы не можете захватить это после перенаправления.Вы увидите только реферера t.co/foobar.

...