Bug in OExchange support


#1

Twitter supports OExchange for sharing links (http://oexchange.org), but I’d like to report a bug in Twitter’s implementation. You can see this for yourself here:
http://www.oexchange.org/tools/sourceharness/?target=http://twitter.com/share

The problem is that Twitter only looks at the URL to be shared and ignores the provided title. This means that a new tweet with just the URL will be proposed to the sharing user.

The problem comes down to this. The following URL:
http://twitter.com/share?url=http%3A%2F%2Fwww.example.com&title=Test%20example
gives a redirect to:
http://twitter.com/intent/tweet?url=http%3A%2F%2Fwww.example.com
However, it should redirect to:
http://twitter.com/intent/tweet?url=http%3A%2F%2Fwww.example.com&text=Test%20example
such that the page title is also included in the proposed tweet.

I hope someone can fix this to make sharing links on Twitter via OExchange more convenient.


#2

I’m not sure that we’re intending to support OpenExchange, whether correctly or incorrectly. The endpoints your mentioning are actually part of our [node:183, title=“Tweet Intent”] functionality, which has its own set of expected parameters – it’s possible any similarity to OpenExchange is coincidental.


#3

Since Twitter supports OExchange auto-discovery (see http://twitter.com/.well-known/host-meta), I consider it very likely that this is indeed intended as an OExchange endpoint. This standardized OExchange endpoint translates the request into a Twitter-specific Tweet Intent request. This makes perfect sense, but there’s just a flaw in the implementation as I described above.

Websites who want a specific Twitter sharing feature, can integrate Tweet Intents into their website, while websites who want to support a generic sharing function that works with any social network, can use the OExchange mechanism.


#4

That’s a good observation; I imagine the auto-discovery might be outdated and unknown to the current maintainers of this area of the site; I’ll let them know to either remove the discovery endpoint or more correctly address the standard. Thanks


#5

#6