django-rest-framework

django-restful:第三方登录接口 学习记录(一)

2018-01-17  本文已影响5人  你常不走的路

首先来说说 自己写的接口

通过这个接口 可以了解一些原理

注意哦 回调url 需要在 微博 开放平台 自己去设置 和下面 的redirect_url 一样 域名可以写你线上 或者线下的都行 我这写的是线下http://127.0.0.1:8000:/complete/weibo 域名是自己 后面是固定写法

第一步 获取授权接口 url auth_url 这个 url拿去浏览器访问 然后 授权后 他会回调 在回调的url中 有一个code 用户下面获取token
第二步 拿着上面的code 获取用户token 来获取用户信息
第三步 测试token是否可用 利用weibo api 中提供的 接口 来获取用户的个人信息

#coding:utf-8
__author__ = "dfk"
__date__ = "2018/1/17 11:08"

def get_auth_url():    #获取授权接口
    weibo_auth_url = 'https://api.weibo.com/oauth2/authorize' #微博接口 api
    redirect_url = 'http://127.0.0.1:8000:/complete/weibo'# 回调api 域名是自己 后面是固定写法
    auth_url = weibo_auth_url+"?client_id={client_id}&redirect_uri={re_url}".format(client_id="你的api keys",re_url=redirect_url)

    print(auth_url)

def get_access_token(code=""):   #获取用户的token
    access_token_url = 'https://api.weibo.com/oauth2/access_token'
    import requests
    re_dict = requests.post(access_token_url,data={
        'client_id':'你的app key',
        'client_secret':'你的secret',
        'grant_type':'authorization_code',
        'code':code,
        'redirect_url':'http://127.0.0.1:8000:/complete/weibo',
    })
    pass
#利用用户token  获取用户信息
#这里的access_token是在 get_access_token  函数中得到的  可以得到token 和一些用户信息  然后我们拿着这些到 微博提供的一些接口 来测试是否能获取用户信息
def get_user_info(access_token="",uid=''):  #这两个参数都是 上面获取的  调试可得
    user_url = 'https://api.weibo.com/2/users/show.json?access_token={token}&uid={uid}'.format(token=access_token,uid=uid)

    print(user_url)

if __name__ =='__main__':
    get_auth_url()    #一个 一个调试
    # get_access_token()
    # get_user_info()

下面一篇 写一些 别人的github集成的 登录包

上一篇 下一篇

猜你喜欢

热点阅读