Use of "state" value (a random string included in authorization request). e.g. renren.
Use "state" to maintain session in an asynchronous fashion. This is essential in multi-platform authorization. Current solution (See "SNSRouter" project) is a dirty trick to avoid concurrent authorization...
Refs: