Ruby-do块和RestClient

Ruby-do块和RestClient,ruby,Ruby,我对Ruby不熟悉 我注意到如果我这样做(假设“请求”已经定义): 然后响应为空。但如果我这样做了 response = RestClient::Request.execute(request) print response 那么,回应就有了意义 第二个有效而第一个无效的原因是什么?forRestClient::Request.execute没有显示它需要一个块: def self.execute(args) new(args).execute end def self.exe

我对Ruby不熟悉

我注意到如果我这样做(假设“请求”已经定义):

然后响应为空。但如果我这样做了

response = RestClient::Request.execute(request)
print response
那么,回应就有了意义

第二个有效而第一个无效的原因是什么?

for
RestClient::Request.execute
没有显示它需要一个块:

def self.execute(args) new(args).execute end def self.execute(args) 新建(args)。执行 结束 它只返回通过对RestClient的匿名实例调用
execute
返回的值。

for
RestClient::Request.execute
不显示它需要一个块:

def self.execute(args) new(args).execute end def self.execute(args) 新建(args)。执行 结束
它只返回在RestClient的匿名实例上调用
execute
返回的值。

如果它接受一个块,它会说什么?它会
在执行期间将控制权让给块的某个地方。因为它不会,即使你添加一个块,代码也不会尝试调用它。如果它接受一个块,它会说什么?它会在执行过程中的某个地方对块产生控制。因为它没有,即使您添加一个块,代码也不会尝试调用它。