gpt4 book ai didi

ruby - 使用 Ruby 的 Net/HTTP 模块,我可以发送原始 JSON 数据吗?

转载 作者:数据小太阳 更新时间:2023-10-29 09:00:29 24 4
gpt4 key购买 nike

与通过 Fiddler 发送数据和请求相比,我一直在研究通过 Ruby HTTP 请求发送 JSON 数据的主题。 我的主要目标是找到一种使用 Ruby 在 HTTP 请求中发送嵌套数据散列的方法。

在Fiddler中,你可以在请求体中指定一个JSON,并添加header“Content-Type: application/json”。

在 Ruby 中,使用 Net/HTTP,如果可能的话,我想做同样的事情。我有一种预感这是不可能的,因为在 Ruby 中将 JSON 数据添加到 http 请求的唯一方法是使用 set_form_data ,它需要散列中的数据。在大多数情况下这很好,但此函数无法正确处理嵌套哈希(请参阅本文中的 comments)。

有什么建议吗?

最佳答案

虽然使用类似 Faraday 的东西通常更令人愉快,它仍然可以使用 Net::HTTP 库:

require 'uri'
require 'json'
require 'net/http'

url = URI.parse("http://example.com/endpoint")

http = Net::HTTP.new(url.host, url.port)

content = { test: 'content' }

http.post(
url.path,
JSON.dump(content),
'Content-type' => 'application/json',
'Accept' => 'text/json, application/json'
)

关于ruby - 使用 Ruby 的 Net/HTTP 模块,我可以发送原始 JSON 数据吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36899600/

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