使用redux-saga重新验证

时间:2018-11-05 05:37:11

标签: reactjs redux react-redux redux-saga

我在我的React项目中使用redux-saga,API使用OAuth2。现在,我需要开发重新验证功能。

每个API服务请求在标头中发送access_tokenaccess_token过期后,我想使用refresh_token获取新令牌。

我有一个组件,调用4个操作来调用API,例如:

class MyComponent extends React.Component {
    componentWillMount() {
        this.props.getData1();
        this.props.getData2();
        this.props.getData3();
        this.props.getData4();
    }
}

因此,当令牌过期时,getData1()会调用刷新令牌API,等待新令牌响应并自行调用。 getData2()getData3()getData4()尚未发送新令牌。我将脚本更新为:

class MyComponent extends React.Component {
    awaitFunction(functions) {
        functions.map(async (_function) => await _function());
    }

    componentWillMount() {
        this.awaitFunction([
            this.props.getData1();
            this.props.getData2();
            this.props.getData3();
            this.props.getData4();
        ]);
    }
}

因此未按顺序调用操作。在第一个动作之前未调用第二个动作。

我如何将await应用于自己的行为?

0 个答案:

没有答案