问题描述
我正在尝试使用Nodejs
进程从Laravel
控制器执行Symfony
文件:
$process = new Process('node node/test.js');
$process->run();
if (!$process->isSuccessful()) {
throw new ProcessFailedException($process);
}
echo $process->getoutput();
node/test.js
位于Laravel public directory
中,如下所示:
const scrapedin = require('scrapedin')
const fs = require('fs')
const cookies = fs.readFileSync('cookies.json')
const options = {
cookies: JSON.parse(cookies)
}
scrapedin(options)
.then((profileScraper) => profileScraper('https://www.linkedin.com/in/profile/'))
.then((profile) => console.log(profile))
internal / modules / cjs / loader.js:638 throw err; ^错误:在>> Function.Module._resolveFilename(internal / modules / cjs / loader.js:636:15)找不到模块'scrapedin'
如果我从终端运行以下命令,脚本将正常运行:
node test.js
如果我从终端运行以下命令,则会收到与上述相同的错误:
node /var/www/webste/public/node/test.js
我猜想,我需要从Laravel controller
执行保存在服务器根目录中的test.js
文件,而不是执行test.js
中的public/node
文件Laravel app
的目录。我很难弄清楚该怎么做。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)