weibo的OAuth问题 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
techzhou
V2EX    OAuth

weibo的OAuth问题

  •  
  •   techzhou 2012-06-05 19:38:30 +08:00 12260 次点击
    这是一个创建于 4922 天前的主题,其中的信息可能已经有所发展或是发生改变。
    开放平台文档上说 OAuth2.0 access_token 24小时后过期

    难道要24h以后 再授权一次 不是这么奇葩吧
    25 条回复    1970-01-01 08:00:00 +08:00
    kaka
        1
    kaka  
       2012-06-05 19:48:34 +08:00
    是的,sina比较短,审核过后是7天
    techzhou
        2
    techzhou  
    OP
       2012-06-05 19:59:16 +08:00
    @kaka 那么我不就是要把用户名和密码给存下来了。。。
    kaka
        3
    kaka  
       2012-06-05 20:08:16 +08:00
    @techzhou 那也要用户愿意把密码交给你。你可以把用户的cookie也设置7天过期。
    我的现在还没有审核过:http://www.v2ex.com/t/37596
    ultragtx
        4
    ultragtx  
       2012-06-05 20:18:56 +08:00
    要是存密码了还要OAuth干啥
    zythum
        5
    zythum  
       2012-06-05 20:20:07 +08:00
    朱一现在已经多审核什么没什么冲动了。如果不用通过审核的话,可以用oauth 1.0的方式。这样token是永久的。
    cooiky
        6
    cooiky  
       2012-06-05 20:21:49 +08:00
    用1.0
    young
        7
    young  
       2012-06-05 20:25:41 +08:00
    保存用户的token,每次登陆更新一下token
    fanzeyi
        8
    fanzeyi  
       2012-06-05 20:35:56 +08:00
    @cooiky 新申请的必须2.0
    fanzeyi
        9
    fanzeyi  
       2012-06-05 20:36:15 +08:00
    @young 不能 新浪没提供 refresh_token
    young
        10
    young  
       2012-06-05 23:14:28 +08:00
    @fanzeyi 不用refresh 这个api没有开发

    我说的是, 每次用户过oauth sina那边都会返回用户有效的token的, update之
    techzhou
        11
    techzhou  
    OP
       2012-06-06 08:31:17 +08:00
    @young 过oauth是什么意思 认证完显然是有效的 问题是会过期么
    shinyzhu
        12
    shinyzhu  
       2012-06-06 08:39:41 +08:00
    新申请的应用只能使用OAuth 2.0,来源审核通过后Access Token可以保存7天过期,没有refresh_token,只能重新让用户登录授权。
    另一种方式是使用grant_type=password的客户端授权,这样客户端需要保存用户名和密码,而且需要广场上线之后才能申请这个权限。
    cooiky
        13
    cooiky  
       2012-06-06 09:35:40 +08:00
    @fanzeyi 没啊,旧的可以用,新申请同样会给你app key和secret啊
    cooiky
        14
    cooiky  
       2012-06-06 09:37:19 +08:00
    @techzhou 就是让用户每次要用的时候都去点一遍授权
    2.0的规范就是有过期时间,但会提供refresh_token来刷新,可sina不给,好像要合作方才有
    QQ的2.0,好像是不过期的
    yun77op
        15
    yun77op  
       2012-06-06 10:02:10 +08:00
    7天一般够用了

    如果是优质应用的话,可以申请延长过期时间

    原则上是不提供refresh_token
    techzhou
        16
    techzhou  
    OP
       2012-06-06 10:25:17 +08:00
    @yun77op 那么比如那些weibo的客户端不是一直可以用的么 难道是存下密码的
    eerie
        17
    eerie  
       2012-06-06 10:26:41 +08:00
    @yun77op 啥叫原则上啊,不按标准来的oauth2就不应该叫oauth2
    国内的这些互联网企业经常有奇葩的事情
    eerie
        18
    eerie  
       2012-06-06 10:27:07 +08:00
    @techzhou u r right
    young
        19
    young  
       2012-06-06 11:48:56 +08:00
    @techzhou token肯定会过期啊 refresh_token也是去更新用户的token啊,只不过是sina那边帮你做了而已。 那么你的应用里面肯定得有个方法去检测用户的token有效期了
    virushuo
        20
    virushuo  
       2012-06-06 11:52:23 +08:00
    oauth2的规范是默认token是有有效期的,这没错。

    但oauth2要有refresh_token接口,不给这个根本没法用,新浪貌似就这么做的。

    我想他们并不是看不懂规范,而是表示用户是我新浪的,不是你的,所以用户要每次通过新浪才能用你的产品。

    所以…客户端为了方便就都自己把用户名密码保存下来了,多大的安全隐患啊。

    所以结论就是,少做这种平台的开发。
    young
        21
    young  
       2012-06-06 11:54:46 +08:00
    不给 refresh_token 也可以理解,现在weibo上到处卖粉的,再把 refresh_token 给开发了,那还了得

    虽然sina有监测
    yun77op
        22
    yun77op  
       2012-06-06 22:17:32 +08:00
    举个例子,2/friendships/friends 这个API返回的数据对象data.users[0~count].following总是为false,这是故意这样的,说是following字段尚未启用

    所以可以看出sina weibo API开放程度是有限的,OAuth相关的也就可以理解了
    toothpaste
        23
    toothpaste  
       2012-06-06 22:23:12 +08:00
    我自己做了个weibo的网页客户端,就是每24小时手动授权一遍,反正只有我自己用。
    satgi
        24
    satgi  
       2012-06-06 22:25:32 +08:00
    sina返回的数据多得吓死人啊
    zsdsz
        25
    zsdsz  
       2012-06-06 23:05:26 +08:00
    不用重新授权 载入应用重新获取access_token就行了
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     908 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 20ms UTC 21:59 PVG 05:59 LAX 13:59 JFK 16:59
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86