我正在通过httr处理FB请求,并一直遇到相同的错误。
这是我为请求创建主体并将其转换为使用jsonlite库的JSON对象的方式:
body <- list()
innerBody <- list()
innerBody$video_id <- videoID
body$canvas_video <- innerBody
body$access_token<-Pagetoken
toJSON(body, pretty = TRUE)
我要提出的请求要求所有字段。输出为以下JSON对象:(请注意,出于隐私考虑,我已删除了令牌)
{
"canvas_video": {
"video_id": ["10160728276111111"]
},
"access_token": [<TOKEN>]
}
我通过以下电话向Facebook发出请求(请注意,由于隐私原因我删除了页面ID):
Test<-POST(url'https://graph.facebook.com/v3.1/<PAGEID>/canvas_elements',
body = body,enconde=c("json"))
预期结果如下:
{
"id": "1111154434423329"
}
但是我一直收到此错误:
Error in curl::handle_setform(handle, .list = req$fields) :
Unsupported value type for form field 'canvas_video'.
任何帮助将不胜感激。
请注意,由于页面权限的缘故,我必须通过参数而不是通过authenticate函数来设置令牌。
(更新)标题中的固定错字
(更新2)经过一些测试后,我几乎确定问题出在嵌套的JSON对象中