这在Python中使用请求库:
names(object_of_my_class) <- c(...)
我想使用httr包在R中复制相同的内容。这是我尝试没有成功的原因:
plist5 = ["5021072"]
data = {"startDate": "2014-04-01", "endDate": "2014-04-01", "pnodeList": plist5}
data = json.dumps(data)
url = 'https://dataminer.pjm.com/dataminer/rest/public/api/markets/realtime/lmp/daily'
headers = {'Content-Type': 'application/json'}
response = requests.post(url, data=data, headers=headers)
这是我从R代码得到的回复:
url <- 'https://dataminer.pjm.com/dataminer/rest/public/api/markets/realtime/lmp/daily'
response <- POST(url, body = list(pnodeList = "5021072",
startDate = "2014-04-01",
endDate = "2014-04-01"),
headers = list('Content-Type' = 'application/json')
)
非常感谢任何关于如何进行的指导。
答案 0 :(得分:0)
希望有人可以详细说明为什么以下内容似乎有效和/或如何剖析在&#34;错误&#34;版本与正在发送的内容&#34;正确&#34;版本:
response <- POST(url, body = list(pnodeList = list("5021072"),
startDate = "2014-04-01",
endDate = "2014-04-01"),
encode = "json")
)
This Quickstart Guide是让我在上面尝试的原因。
添加verbose()
可让您查看已发送的内容:
POST(url, body = list(pnodeList = list("5021072"),
startDate = "2014-04-01",
endDate = "2014-04-01"),
encode = "json",
verbose()
)
您最初尝试中最明显的缺陷是,在python版本中,pnodeList
是list
。