【发布时间】:2014-12-06 00:15:57
【问题描述】:
我是第一次尝试学习 Ruby。我在 PHP 和 PHP 方面有一些经验,我做了一个类似的函数
function call_api(endpoint,method,arr_parameters='')
{
// do a CURL call
}
我会使用喜欢的
call_api('https://api.com/user','get','param=1¶m=2');
call_api('https://api.com/user/1','get');
call_api('https://api.com/user/1','post','param=1¶m=2');
call_api('https://api.com/user/1','put','param=1¶m=2');
call_api('https://api.com/user/1','delete');
到目前为止,我只学会了如何使用 Ruby 进行 GET 和 POST 调用,如下所示:
conn = Net::HTTP.new(API_URL, API_PORT)
resppost = conn.post("/user", 'param=1', {})
respget = conn.get("/user?param=1",{})
但我不知道如何删除和放置。有人可以使用 Net::HTTP 对象显示删除和放置调用的示例代码吗?
【问题讨论】:
-
有许多非常好的 Ruby 的 HTTP gem,特别是 Curb,它是经过良好测试的 libCurl 包装器。 ruby-toolbox.com/categories/http_clients 有一个很好的列表,与其尝试自己创建,不如利用其他人所做的工作。
-
Net::HTTP 的设计非常糟糕,在我看来违反了很多 Ruby 约定。我支持@theTinMan,如果可以的话,建议使用不同的 http 客户端库
-
嘿,约翰,我的回答有帮助吗?