R-带有httr的POST json

时间:2018-12-15 10:37:49

标签: r json httr

使用POST()时遇到了一些麻烦。

当json有点复杂时,我不确定如何指定body()

像这样的简单示例可以正常工作:

POST(url = url,
     add_headers(Key = "authorization", 
          Authorization = paste("Bearer", accessToken, sep = " ")),
     body = list(Name = "Test"), encode = "json")

但是当json更复杂时,例如:

{
     "Supplier": "00000000-0000-0000-0000-000000000000",
     "PurchaseOrderLines": [
     {
          "Item" : "00000000-0000-0000-0000-000000000000",
          "PurchaseOrderID" : "00000000-0000-0000-0000-000000000000",
          "QuantityInPurchaseUnits" : 5.0
     }
     ]
} 

如何为该json代码创建主体?我的猜测如下:

POST(url = url,
     add_headers(Key = "authorization", 
          Authorization = paste("Bearer", accessToken, sep = " ")),
     body = list(Supplier = "00000000-0000-0000-0000-000000000000", 
                 PurchaseOrderLines = list(
                          Item = "00000000-0000-0000-0000-000000000000", 
                          PurchaseOrderID = "00000000-0000-0000-0000-000000000000",
                          QuantityInPurchaseUnits = "5.0")) 
     encode = "json")

这将返回HTML状态400,因此显然调用存在问题。我的body()是正确的,还是我缺少什么?

编辑:您可以在here上找到API文档。

0 个答案:

没有答案