我试图从承诺爬升到一个主题,它不起作用:
async function vkApiCall(method, params) {
params['access_token'] = params['access_token'] || VK_APP_TOKEN;
const params = Object.keys(params).map(k => `${encodeURIComponent(k)}=${encodeURIComponent(params[k])}`).join('&');
const response = await fetch(`https://api.vk.com/method/${method}?${params}`);
return await response.json();
}
function loadVkCities() {
const data = await vkApiCall('database.getCitiesById', {
country_id: 1,
need_all: 1
});
console.log(data);
}
给出错误消息:
const data = await vkApiCall('database.getCitiesById', {
^^^^^^^^^
SyntaxError: Unexpected identifier
at createScript (vm.js:80:10)
at Object.runInThisContext (vm.js:139:10)
at Module._compile (module.js:576:28)
at Object.Module._extensions..js (module.js:623:10)
at Module.load (module.js:531:32)
at tryModuleLoad (module.js:494:12)
at Function.Module._load (module.js:486:3)
at Function.Module.runMain (module.js:653:10)
at startup (bootstrap_node.js:187:16)
at bootstrap_node.js:608:3
要使用 await,必须使用 async 声明函数:
并且当返回 json await 是多余的。这里没有什么可以等待的
你可以只返回值