techzhou
V2EX  ›  OAuth

weibo的OAuth问题

  •  
  •   techzhou · Jun 5, 2012 · 13328 views
    This topic created in 5268 days ago, the information mentioned may be changed or developed.
    开放平台文档上说 OAuth2.0 access_token 24小时后过期

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

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

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

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

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

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

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

    所以结论就是,少做这种平台的开发。
    young
    young
    Jun 6, 2012
    21
    不给 refresh_token 也可以理解,现在weibo上到处卖粉的,再把 refresh_token 给开发了,那还了得

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

    所以可以看出sina weibo API开放程度是有限的,OAuth相关的也就可以理解了
    toothpaste
    toothpaste
    Jun 6, 2012
    23
    我自己做了个weibo的网页客户端,就是每24小时手动授权一遍,反正只有我自己用。
    satgi
    satgi
    Jun 6, 2012
    24
    sina返回的数据多得吓死人啊
    zsdsz
    zsdsz
    Jun 6, 2012
    25
    不用重新授权 载入应用重新获取access_token就行了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   756 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 41ms · UTC 19:18 · PVG 03:18 · LAX 11:18 · JFK 14:18
    ♥ Do have faith in what you're doing.