Learning about Trackbacks
Today I learnt a lot more about Trackbacks - I had as I'm hoping to implement them in ProjectDistributor.
In a nutshell, you can embed an xml fragment (RDF) in your pages that other sites can look for. This fragment tells the other site that, if they'd like to notify you to tell you that they have some content which references your page that they should "ping" another page within your site - probably something like http://mysite.com/TrackbackHandler.aspx?anIdReferencingThePageThatTheyAreTrackingBackTo
When they ping that page, you do a database write (probably after a bit of validation that they are not a spambot) to record the trackback details.
So, trackbacks only work if the referencing site has the Trackback pinging framework implemented at their end. Why is that you ask? Well, at their end, they need to initiate the initail page scrape which looks for the embedded RDF node in your page. They would do this when a page is saved on their site, they would grab any Hrefs out of the body and, if they are external they would do a page scrape and do the scan for the embedded Rdf node.
So, to re-cap... if you want your application to be the beneficiary of Trackback data you need to:
- Put an RDF node in each page which specifies a Uri for the page and a page which can be reached to record the trackback notification
- Create the page to record the trackback notification - probably easiest to write an HttpHandler to handle requests to this resource.
- Code the HttpHandler to record the Trackback notification
The best article that I saw explaining this topic was: http://www.wwwcoder.com/main/parentid/262/site/2344/68/default.aspx
... there's also ScottW's article about what goes on with trackbacks under the hood of .Text: http://scottwater.com/blog/archive/2004/02/06/Trackbacks.aspx