Пример #1
0
def get_token():
    '''生成「令牌」(5种登录方式)'''
    form = ClientValidator().nt_data
    token = LoginVerifyService.get_token(account=form.account,
                                         secret=form.secret,
                                         type=form.type)
    return Success(data=token)
Пример #2
0
def create_client():
	form = ClientValidator().validate_for_api()  # 参数校验,直接在此抛出异常,并中指代码
	promise = {
		ClientTypeEnum.USER_EMAIL: __register_user_by_email
	}
	promise[form.type.data]()
	return Success(error_code=1)
Пример #3
0
def create_client():
	form = ClientValidator().validate_for_api()  # 参数校验,直接在此抛出异常,并中指代码
	promise = {
		ClientTypeEnum.USER_EMAIL: __register_user_by_email,
		ClientTypeEnum.USER_MOBILE:None,
		ClientTypeEnum.USER_MINA:__register_user_by_mina,
		ClientTypeEnum.USER_WX_OPEN:None,
		ClientTypeEnum.USER_WX:__register_user_by_mina,
	}
	promise[form.type.data]()
	return Success(error_code=1)
Пример #4
0
def get_token():
    form = ClientValidator().validate_for_api()
    promise = {
        ClientTypeEnum.USER_EMAIL: User.verify_by_email,
        ClientTypeEnum.USER_MINA: User.verify_by_wx
    }
    identity = promise[ClientTypeEnum(form.type.data)](form.account.data,
                                                       form.secret.data)
    expiration = current_app.config['TOKEN_EXPIRATION']
    token = generate_auth_token(identity['uid'], form.type.data,
                                identity['scope'], expiration)
    return jsonify(token), 201
Пример #5
0
def get_token():
    form = ClientValidator().validate_for_api()
    promise = {
        ClientTypeEnum.USER_EMAIL: User.verify,
    }
    identity = promise[ClientTypeEnum(form.type.data)](form.account.data,
                                                       form.secret.data)
    # Token生成
    expiration = current_app.config['TOKEN_EXPIRATION']
    token = generate_auth_token(identity['uid'], form.type.data,
                                identity['scope'], expiration)
    t = {'token': token.decode('ascii')}
    return Success(data=t)
Пример #6
0
def get_token():
    form = ClientValidator().validate_for_api()
    promise = {
        ClientTypeEnum.USER_EMAIL: User.verify_by_email,
        ClientTypeEnum.USER_WX: User.verify_by_wx,
    }
    # 微信登录则account为code(需要微信小程序调用wx.login接口获取), secret为空
    identity = promise[ClientTypeEnum(form.type.data)](form.account.data,
                                                       form.secret.data)

    # Token生成
    expiration = current_app.config['TOKEN_EXPIRATION']
    token = generate_auth_token(identity['uid'], form.type.data,
                                identity['scope'], expiration)
    return Success(data=token)
Пример #7
0
def get_token():
    '''生成「令牌」(3种登录方式)'''
    form = ClientValidator().validate_for_api()
    promise = {
        ClientTypeEnum.USER_EMAIL: User.verify_by_email,  # 邮箱&密码登录
        ClientTypeEnum.USER_WX: User.verify_by_wx,  # 微信小程序登录
        ClientTypeEnum.USER_WX_OPEN: User.verify_by_wx_open  # 微信开发平台登录(微信扫码登录)
    }
    # 微信登录, 则account为code(需要微信小程序调用wx.login接口获取), secret为空
    identity = promise[ClientTypeEnum(form.type.data)](form.account.data,
                                                       form.secret.data)
    # Token生成
    expiration = current_app.config['TOKEN_EXPIRATION']  # token有效期
    token = Token.generate_auth_token(identity['uid'], form.type.data,
                                      identity['scope'], expiration)
    return Success(data=token)
Пример #8
0
def get_token():
    '''生成「令牌」(4种登录方式)'''
    form = ClientValidator().validate_for_api()
    promise = {
        ClientTypeEnum.USERNAME: User.verify_by_username,  # 用户名&密码登录
        ClientTypeEnum.EMAIL: User.verify_by_email,  # 邮箱&密码登录
        ClientTypeEnum.MOBILE: User.verify_by_mobile,  # 手机号&密码登录
        ClientTypeEnum.WX_MINA: User.verify_by_wx_mina,  # 微信·小程序登录
    }
    # 微信登录, 则account为code(需要微信小程序调用wx.login接口获取), secret为空
    identity = promise[ClientTypeEnum(form.type.data)](form.account.data,
                                                       form.secret.data)
    # token生成
    expiration = current_app.config['TOKEN_EXPIRATION']  # token有效期
    token = generate_auth_token(identity['uid'], form.type.data.value,
                                identity['scope'], expiration)
    return Success(data=token)
Пример #9
0
def create_client():
    form = ClientValidator().validate_for_api()
    promise = {ClientTypeEnum.USER_EMAIL: __register_user_by_email}
    promise[form.type.data]()
    return Success()