例如,我有一个带有两个变量的数据框。我想将每行的请求发布到服务器。
我已经做到了:
lapply(seq_along(df$x), function(x){
POST(some_url, accept_json(),
add_headers(Authorization = 'Bearer {secret_key})',
body = as.list(df[x,]), encode = 'json')
})
在服务器具有RPS限制之前,一切正常。
如何以最佳方式处理此问题?是否应该将每个429 http错误提取到另一个列表并重复POST请求,依此类推?还是应该将列表切成等于服务器RPS的样本? 请同时提供这两种变体的帮助:)
答案 0 :(得分:0)
您应该遵守服务器的速率限制。例如,向函数添加Sys.sleep()
调用以适当地延迟请求。