File post参数中的erlang文件
我有一个问题: 我需要从芝加哥的post param读取文件。我正在努力:File post参数中的erlang文件,file,file-io,erlang,chicagoboss,File,File Io,Erlang,Chicagoboss,我有一个问题: 我需要从芝加哥的post param读取文件。我正在努力: upload_file('POST', []) -> File = Req:post_param("file"), {ok,Data} = file:read_file(File), 并有一个错误: {{badmatch,{error,enoent}} 当我试图检查文件时,如: case filelib:is_file(File) of true -> {output, "
upload_file('POST', []) ->
File = Req:post_param("file"),
{ok,Data} = file:read_file(File),
并有一个错误:
{{badmatch,{error,enoent}}
当我试图检查文件时,如:
case filelib:is_file(File) of
true -> {output, "ok"};
false -> {output, "error"}
end.
我有错误输出。
我正在和邮递员一起上传文件。问题出在哪里?请求:post_参数文件中有什么
假设它是一个文件的路径:是否检查了文件的值
无论如何,您可能正在查找的是Req:post_files/0:
[{_, _FileName, TempLocation, _Size}|_] = Req:post_files(),
{ok,Data} = file:read_file(TempLocation),
将文件保留在临时位置也可能是一个坏主意,您最好找到一个更合适的位置来存储它们。enoint是未找到目录的posix错误代码
此外,您的代码允许人们从磁盘读取任意文件。这将最终导致服务器攻击。回答如下: