如何在Erlang Cowboy

时间:2015-09-11 04:31:52

标签: erlang cowboy

我在使用cowboy_req:body_qs(Req)检索超过有限大小(64K)的POST内容时遇到问题,因为它将返回{badlength,Data,Req1}

但如果我使用具有以下格式的cowboy_req:body(Req),则数据可用:

参数1 =值1&安培; parm2 =值2 ...

以下是检索小于有限大小(默认为64K)的数据的方法

{Post, Req2} = case cowboy_req:body_qs(Req) of
    {ok, Data, Req1} -> {Data, Req1};
    {badlength, Req1} -> {[], Req1}
end

以下是检索大数据的方法

get_post_large(Req) ->
    case cowbod_req:body(Req) of
        {ok, Data, Req1} -> {Data, Req1};
        {more, Data, Req2} -> get_post_large(Req2)
    end.

问题是,get_post_large返回二进制文件:

<<"param1=value1&param2=value2....">>

关于这个问题的想法。

先谢谢

1 个答案:

答案 0 :(得分:0)

cowboy_req:body(Req,[{length,10000000}])