如果用户对应用程序的现有授权与所需的访问级别不匹配,Twitter API 似乎不会通过授权过程自动将 OAuth 身份验证请求路由回。例如,假设一个应用程序已从“读、写”更改为“读、写、直接消息”,但用户仅对“读、写”进行了身份验证。
您是否只需清除数据库中所有现有的 oauth 令牌,从而要求所有用户重新授权应用程序 - 还是有办法检查 oauth 记录是否符合所需的访问级别,如果不匹配,则路由用户通过授权过程返回?
Twitter 开发者论坛上的一个帖子https://dev.twitter.com/discussions/1253建议必须使用 /authorize URL(导致授权过程)来授权第一个读、写、DM 权限时间(覆盖任何以前的权限级别)。一旦应用程序被授权,从那时起就可以使用 /authenticate 方法——尽管我还没有找到任何关于如何确定用户在重定向到 /authorize 或 /authenticate 之前是否已经授权应用程序的任何信息。