首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  Heroku

Heroku 的 nodejs 如何将提交的表单信息写入文件?

  •  
  •   tan9p · 229 天前 · 939 次点击
    这是一个创建于 229 天前的主题,其中的信息可能已经有所发展或是发生改变。

    楼主还是典型的 PHP 思维,想将表单提交的信息写入 info.txt 文件,就这样写:

    fs.appendFile(path.join(__dirname,'info.txt'),querystring.parse(reqBody).name+"\t",function(error){});

    但是在 heroku 的 bash 下找不到想要的 info.txt 文件,想问下该如何解决:) 谢谢各位大虾啦~

    10 回复  |  直到 2019-03-02 18:12:05 +08:00
        1
    Jven   229 天前 via Android
    你都不知道吧 error 打印一下吗
        2
    tan9p   229 天前
    打了的,
    fs.appendFile(path.join(__dirname,'info.txt'),querystring.parse(reqBody).name+"\t",function(error){if(error) console.log('写文件操作失败');
    else console.log('写文件操作成功');
    });
    看 logs 显示的是写文件操作成功,但是在 bash 里找不到这个文件.
    用 find / -name "info.txt"
    查的结果是 lost+found permission denied
        3
    Jven   229 天前 via Android
    自己吧 path.join 出的路径打印出来去找,用 find /找也是 6
        4
    tan9p   229 天前
    @Jven 出来的路径是 app/ 在这个文件夹下没有这个文件呀
        5
    Jven   229 天前 via Android
    从逻辑上看没什么问题,你可以考虑一下平台问题,或者 callback 里读一下目录看有没有那个文件
        6
    lzvezr   229 天前 via iPhone
    路径少了个 /吧
        7
    lzvezr   229 天前 via iPhone
    @lzvezr 哦,没注意,path.join 不存在这个问题
        8
    crysislinux   229 天前 via Android
    要写就写数据库,不然一重启就没了,heroku 也会自己重启
        9
    ChefIsAwesome   229 天前
    免费的 heroku 不让存东西吧。
        10
    marknote   228 天前 via iPhone
    Heroku 的文件系统临时的
    你需要其他的机制,比如 s3 或者数据库
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4121 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 25ms · UTC 01:20 · PVG 09:20 · LAX 18:20 · JFK 21:20
    ♥ Do have faith in what you're doing.