我正在处理一个使用AWS Cognito的项目。需要通过API调用从服务器获取一些配置参数。我将API调用保存在config.js文件中,并使用async / await从这样的服务器获取响应
const getCognitoConfigs = async () => {
const res = await axios.get(`${apiurl.apiurl}/logininfo`);
console.log(res.data);
return res.data;
};
export default getCognitoConfigs;
然后在index.js(我在其中设置Cognito的位置)中,从config.js文件导入功能
import getCognitoConfigs from "./config";
const configs = getCognitoConfigs();
Amplify.configure({
Auth: {
mandatorySignIn: true,
region: configs.cognito.region,
userPoolId: configs.cognito.user_pool,
userPoolWebClientId: configs.cognito.app_client_id
}
});
问题是异步等待不会停止程序执行,因此我正在获取未定义的“配置”。无论如何,在api调用解决之前,我可以使应用程序停止吗?谢谢。
答案 0 :(得分:0)
如果要使用异步/等待,则必须将index.js包装在异步函数中并添加
await getCognitoConfigs();
或者您可以使用诸如
的promisegetCognitoConfigs().then(res => Amplify.configure({...}))