我有一個快速應(yīng)用程序,它生成一個Python進程來執(zhí)行Python腳本。當我執(zhí)行 ,我可以看到我的終結(jié)點正在被命中,然后運行 Python 進程。但是,該過程似乎沒有執(zhí)行。firebase serveconst runPythonScript = () => { return new Promise((resolve, reject) => { let value; const spawn = require('child_process').spawn; const pythonProcess = spawn('python', ['./myScript.py']); pythonProcess.stdout.on('data', (data: string) => { console.log('Am I being hit?') // This line is not being hit value = JSON.parse(data); }); pythonProcess.on('exit', (code: number) => { if (code === 0) { resolve(value); } else { reject(value); } }); });}從上面代碼中的注釋來看,stdout“數(shù)據(jù)”的偵聽器沒有被擊中。我不太熟悉Firebase,但我的想法是將Firebase托管用于我的前端,然后使用Firebase云功能來運行我的快速服務(wù)器。為了使我的應(yīng)用程序運行Python腳本,我需要做些什么嗎?從我從其他 StackOverflow 帖子(此處)收集到的信息來看,我無法運行 Python 進程,可能是因為 Firebase 云函數(shù)沒有安裝 Python。因此,我需要將我的Python腳本打包成可執(zhí)行文件(如此處所述),以便Firebase云函數(shù)可以只運行可執(zhí)行文件。這是正確的嗎?如果是這樣,我寧愿不必打包我所有的Python腳本。有沒有更好的方法來解決這個問題?這是免費的嗎?
用于運行 Python 腳本的火庫云函數(shù)
慕慕森
2022-09-29 15:36:37