我只是Node和Express上的新功能。嘗試傳遞一個函數而不是我的路線上的文本,但它似乎不工作。我只是看着那裏的文檔,他們只提到req.send()
方法的文字。我試圖通過這裏功能,但它不工作。並且alert()
不能像這樣工作req.send(alert('Hello world'))
它表示警報沒有被定義或類似。快遞js傳遞函數路由不工作
**更新**我試圖用快遞和節點https://github.com/przemyslawpluta/node-youtube-dl
我想在這裏做的傳遞函數這樣
function blaBla() {
var youtubedl = require('youtube-dl');
var url = 'http://www.youtube.com/watch?v=WKsjaOqDXgg';
// Optional arguments passed to youtube-dl.
var options = ['--username=user', '--password=hunter2'];
youtubedl.getInfo(url, options, function(err, info) {
if (err) throw err;
console.log('id:', info.id);
console.log('title:', info.title);
console.log('url:', info.url);
console.log('thumbnail:', info.thumbnail);
console.log('description:', info.description);
console.log('filename:', info._filename);
console.log('format id:', info.format_id);
});
}
app.get('/', (req, res) => {
res.send(blaBla());
})
**而是要執行這個庫的**
app.get('/', function (req, res) {
res.send('Hello World!')
})
我希望你的傢伙瞭解我的問題。
您是否嘗試過將函數作爲字符串傳遞並讓瀏覽器調用eval()接收的字符串? –
等待一個字符串?這是什麼意思,我不明白事情真的很好。所以,如果你只是給我一個很好的例子。 –
警報將不會在您的服務器上定義,它是web-api的一部分。另外,您可能會對運行時函數執行的工作方式感到困惑。在你的發送示例中,你發送函數blaBlah的返回值,而不是函數本身。 – Shadowfool