我想在C#中執行類似於async/await的功能,但是在節點js中 我找到了example,但它給了我一個錯誤。async/await在Nodejs中替換
這裏是
function* gotNews(response){
console.log("in gotNews");
str='';
response.on('data', function (chunk) {
str += chunk;
});
response.on('end', function() {
str = JSON.parse(str);
console.log(str);
fetchCategories();
});
return str;
}
function fetchNews(sourceURL){
console.log("in fetch news");
sourceURL = url.parse(sourceURL);
console.log(sourceURL);
var options =
{
host: sourceURL.host,
port: 134,
path: sourceURL.path,
method: 'GET',
};
var req = http.request(options,yield gotNews);//start request and recive response in gotSources
req.end();
}
我現在用的是*產操作的代碼,但給我一個錯誤
ErrorC:\Users\Alaa\Desktop\Fluid_layout_with_jQuery_Masonry\1\app.js:198
var elnewselygat = yield gotNews();
^^^^^^^
SyntaxError: Unexpected identifier
at Module._compile (module.js:439:25)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:901:3
它是什麼特殊功能*(我的意思是STAR)?我從來沒有見過這樣的函數聲明 – tomekK
@tomekK * in *函數是你的async關鍵字。產量是您的等待關鍵字。 –
哦,對不起,愚蠢的問題。我應該先查看鏈接 – tomekK