首页 > PHP > Sina OAuth request_token 如何存储?
2011六月18

Sina OAuth request_token 如何存储?

闲来无事,研究新浪的OAuth接口,来允许新浪用户登录,其过程呢是比较繁琐的。虽然有一些SDK可以下载,但是都不尽如人意。

资源如下:

  1. 新浪的OAuth API地址
  2. 新浪微博开放平台OAuth授权解决方案(含代码

纠结的问题在于此:

  1. 新浪使用的是OAuth 1.0 ,在用户授权验证前,需要先生成request_token
  2. request_token 应该如何存储?
  3. SDK中的建议是存储在SESSION中,但是如果我有多台前端机,DNS解析又是不靠谱的,那么我的多台机器如何同步SESSION?
  4. SESSION存储在数据库中可以避免此问题,可是问题是我的业务不需要用到数据库,为了存储临时性的一次SESSION而用库,太不划算。
  5. 存储到COOKIE中,多台前端机的问题就不用关心了,不过是否会有不安全因素呢?
  6. COOKIE中是否可以存储一个字符串,该串为MEMCACHE的KEY,由MEM来存储这个一次性的request_token 是否可行?
  7. 别人拿到COOKIE,COOKIE可以加一些验证,比如签名之类的东西,并不是随便改造就可以破坏我的程序的。

分析过程大致如上,具体如何实现还在纠结!

文章作者:simaopig
本文地址:http://www.xiaoxiaozi.com/2011/06/18/2215/
版权所有 © 转载时必须以链接形式注明作者和原始出处!

10 Responses to “Sina OAuth request_token 如何存储?”

  1. #1 一兮 回复 | 引用 Post:2011-06-18 12:50

    可以考虑下与域名有关的储存方式。
    曾经做关于twitter的插件是用HTML5的localstorage储存的。

    [回复]

    simaopig 回复:

    相关的存储方式有很多:UserData (IE)、Cookie、Flash方式来存储(所有)、localstorage(HTML5)支持。 谢谢!

    [回复]

  2. #2 siqiang 回复 | 引用 Post:2011-06-26 06:39

    站街女的优势,不用交房租没?》求解答,感谢!@

    另,关于为啥关闭评论了?

    [回复]

  3. #3 菜根 回复 | 引用 Post:2011-07-05 23:05

    之前我也弄过,我用了COOKIE存储, COOKIE信息采用了Discuz里的authcode加解密函数, 函数里的key参数预先随机生成

    [回复]

  4. #4 Ansen 回复 | 引用 Post:2011-07-06 22:04

    :wink:
    原来这里还有你的自留地 哈哈

    [回复]

  5. #5 satsun 回复 | 引用 Post:2011-07-21 14:12

    :arrow: 呵呵 来喽 不小心留言 纯属误会 不必回访 :-o

    [回复]

  6. #6 CodeCTO 回复 | 引用 Post:2011-07-23 01:56

    一般用session来储存,进程保存在服务器上,比较安全,用完可以马上销毁

    [回复]

  7. #7 张海华 回复 | 引用 Post:2011-07-24 09:22

    又一高手,研究新浪oauth接口!!!

    [回复]

  8. #8 荒野无灯 回复 | 引用 Post:2011-07-24 21:36

    多台服务器SESSION同步是个问题。
    PS:
    现在你这个主题很漂亮啊,看到好多人在用。

    [回复]

    simaopig 回复:

    是挺漂亮,不过我想换了。。

    [回复]

发表评论

:wink: :twisted: :roll: :oops: :mrgreen: :lol: :idea: :evil: :cry: :arrow: :?: :-| :-x :-o :-P :-D :-? :) :( :!: 8-O 8)