"something", "ip" => "localhost", "logs"-6ren">
gpt4 book ai didi

ruby - 使用 HTTParty 发布大量数据

转载 作者:数据小太阳 更新时间:2023-10-29 08:40:15 28 4
gpt4 key购买 nike

我正在使用 HTTParty 使用以下代码将信息发布到服务器:

this_component = {"name" => "something", "ip" => "localhost", "logs" => logs_to_push}
payload = {"payload" => JSON.dump(this_component)}
response = JSONClient.post("http://localhost:8080/log", :body => '', :query => payload)

问题是当 POST 实际执行时,我收到了 Connection reset by peer (Errno::ECONNRESET) 消息,我很确定这是由于我的有效负载太大(因为logs_to_push 是一个包含约 200 行日志的数组)。我将如何重构上述内容以便成功推送这些数据?

最佳答案

事实证明,对于大量内容,您应该将负载放在 :body 而不是 :query 中。对于以后遇到这个问题的人来说,正确的代码(根据上面的例子)应该是:

this_component = {"name" => "something", "ip" => "localhost", "logs" => logs_to_push}
payload = {"body" => {"payload" => JSON.dump(this_component)}}
response = JSONClient.post("http://localhost:8080/log", payload)

关于ruby - 使用 HTTParty 发布大量数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9170977/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com