2
好吧,我是OAuth的新手,我正在创建一个与Twitter集成的应用程序。我是否每次都必须遵循OAuth工作流程(请求令牌 - >访问令牌 - > API调用)?
我正在使用Twitter4j并按照他们的指示。那里没有问题。
- 我可以要求用户授权应用
- 我交换请求令牌访问令牌
- 一旦用户athorizes应用程序序列化对象
这里的序列化是如何发生的
FileOutputStream fos = getContext().openFileOutput(fileName, Context.MODE_PRIVATE); ObjectOutputStream oos = new ObjectOutputStream(fos); oos.writeObject(accessToken); oos.close();
所以当它的时间使用访问令牌再次,我只是desiralize对象,然后分配到一个新的Twitter对象,并调用状态更新,如下图所示:
AccessToken twitterToken = objectDeserialization();
Twitter twitter = new TwitterFactory().getInstance();
twitter.setOAuthConsumer(twitterApiKey, twitterApiSecret);
twitter.setOAuthAccessToken(twitterToken);
twitter4j.Status status = twitter.updateStatus("This is sparta! :)");
的问题是,我得到一个401
我到处看我确信我不应该再次通过整个令牌交换的事情。我错了吗?
也许我应该简单地存储访问令牌和访问令牌密钥,并从头开始创建一个新的对象,而不是反序列化一个旧的对象?
感谢您的帮助:-)