我是这个主题的新手,之前曾回顾过几个SO答案,但仍然无法弄清楚。
尝试使用R访问API:
curl -X POST "http://api.spending.gov.ua/api/rest/1.0/transactions" -H "accept: application/json" -H
"Content-Type: application/json" -d "{ \"payers_edrpous\": [ \"string\" ], \"recipt_edrpous\": [
\"string\" ], \"startdate\": \"string\", \"enddate\": \"string\", \"regions\": [ 0 ]}"
我目前的阶段
library(httr)
r <- GET("http://api.spending.gov.ua/api/rest/1.0/transactions")
status_code(r)
此方法有效,我收到了200
回复。但是如何编写查询以json格式获取数据呢?感谢任何提示。
@ dcruvolo的链接很有帮助。
为了使它起作用,您需要从一些有效值开始。在问题的API链接中,有一个测试页面可以测试提交:
一个可以替代测试值,然后按“执行”按钮提交值。上面注释中的尝试值,足够有效,不会导致错误,但也不会返回任何有效结果。
要在R中执行POST,这是一个示例:
posting<-'{ "payers_edrpous": [ "00013534" ], "recipt_edrpous": [ "" ], "startdate": "2020-03-01", "enddate": "2020-03-28", "regions": [ 0 ] }' library(httr) r <- POST("http://api.spending.gov.ua/api/rest/1.0/transactions", body=posting, httr::add_headers(`accept` = 'application/json'), httr::content_type('application/json')) #encode="json" content(r)
发布是要传递的JSON正文,请根据需要进行编辑。除了“区域”(整数是整数)外,所有变量都是字符串,不确定有效范围是多少。
对不起,这是我所能做的最好的。祝你好运。