0

R Web サーバー パッケージ Rook を使用して、POST 要求の本文の生のテキストを取得したいと考えています。

R アプリを登録しました。

parsePOST <- function(env) {
  request <- Rook::Request$new(env)

  body <- request$body()
  print(body)
}

R.server$add(app = parsePost, name = "reportGeneratorApp")

残念ながら、bodyですRook::RhttpdInputStream。私が試したこと:

  1. これは最初の行のみを提供します:
    body <- request$body()$read_lines()
    結果:
    {\n

  2. これは、「Content-Length」ヘッダーに関係なく、本文の開始のみを提供します。他のすべての読み取り行はcharacter(0). さらに、行にはランダムな場所でデータが欠落しています。
    body <- request$body()$read_lines(10)
    結果:

   [2] " \"data\": {\n   "                                                                                                                        
   [3] "evious\": [\n      2\n    ],\n    \"v"                                                                                                    
   [4] "e\": {\n        \"Differentially private me"                                                                                              
   [5] "              \"values\": [\n                44.39"                                                                                       
   [6] "an mechanismLaplace\"\n              ],\n              \"arguments\": ["                                                                  
   [7] "         },\n            \"batch\": [\n              1\n            ]\n          }\n    "                                                 
   [8] "\n            ]\n          }\n        }\n      },\n      \"educ_income\": {\n        \"ols\": {\n          \"ols0\": {\n            \"rel"
   [9] ""                                                                                                                                         
  [10] ""                                                                                                                                         

POST リクエストは、ヘッダー付きの郵便配達員によって送信されていContent-Type: application/jsonます。

リクエストボディを取得するのが非常に難しいことに非常に驚いています。

4

1 に答える 1