
申请成为新浪微博开发者流程
新建应用,获取appid和app密钥
具体流程:
https://blog.csdn.net/qq_42249896/article/details/87433349
新浪微博拼接登录代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
'''调用微博登录''' class (BaseHandler): def get(self,*args,**kwargs): weibo_auth_url = "https://api.weibo.com/oauth2/authorize" redirect_url = "http://127.0.0.1:8000/md_admin/weibo" client_id = "2636039333" auth_url = weibo_auth_url + "?client_id={client_id}&redirect_uri={re_url}".format(client_id=client_id, re_url=redirect_url) self.write(auth_url)
|
新浪微博回调代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
class SinaBackHandler(BaseHandler): def get(self,*args,**kwargs): code = self.get_argument('code') access_token_url = "https://api.weibo.com/oauth2/access_token" re_dict = requests.post(access_token_url,data={ "client_id": '2636039333', "client_secret": "4e2fbdb39432c31dc5c2f90be3afa5ce", "grant_type": "authorization_code", "code": code, "redirect_uri": "http://127.0.0.1:8000/md_admin/weibo", })
re_dict = re_dict.text re_dict = eval(re_dict) uid = re_dict.get('uid') if uid: user = User() user.name = uid user.social_attr = 1 session.add(user) session.commit()
user_ = session.query(User).filter_by(name=uid).first() self.redirect('http://localhost:8080/?uid=%s' %(user_.id))
|
业务流程
访问拼接地址获取登录地址-》在回调网址内判断新浪微博是否登录成功
近期评论