Запрос API с использованием dateRangeInput в R - PullRequest
0 голосов
/ 27 апреля 2019

Я пытаюсь запросить диапазон дат из API в R / Shiny.Я использую dateRangeInput, чтобы указать диапазон, а в документации API указано, что вызов:

spuddate, Значение должно быть в формате RFC3339, Последняя дата начала сверления для свойства.Пример: spuddate = gt (2006-01-02T15: 04: 05Z) spuddate = le (2017-03).

Как бы я сделал это правильно?

Я пробовал несколько методовиспользуя anytime и rfc3339, но я продолжаю получать различные ошибки.Я подозреваю, что это должно быть что-то вроде того, как я структурирую входной вызов на сервере.

#UI - Obviously there are more but for sake of brevity here is the subset
sidebarPanel(
      fluidRow(
        column(12,
               selectizeInput('stateSelect','STATE', choices= paste0(state.abb, sep=''), multiple=FALSE))
      ),
      fluidRow(
        column(12,
               selectizeInput('directionSelect','HOLE DIRECTION', choices= c('H','V','D','U'), multiple=FALSE))
      ),
      fluidRow(
        column(12,
               dateRangeInput("dateSelect", label = h3("Spud Date range")))
      ),
#Server Try So Far -- Obviously there are more but for sake of brevity here is the subset
observeEvent(input$select, {
      wellInfo <- GET("https://di-api.drillinginfo.com/v2/direct-access/producing-entities",
                      add_headers(c('X-API-KEY' = key, 'Authorization' = addToken, 'Accept' = 'text/xml')),
                      query=list(drilltype = dput(input$directionSelect), state = dput(input$stateSelect),
                                 spuddate = (rfc3339(anytime(input$dateSelect[1])),rfc3339(anytime(input$dateSelect[2]))),
                                 pagesize = 100000))
})

Я просто хочу, чтобы запрос прекратился.Он работает без вызова spuddate (т. Е. Только запрос состояния и детализации).Любая помощь будет оценена!Спасибо.

1 Ответ

0 голосов
/ 27 апреля 2019

Хорошо, разобрался с методом грубой силы.


date1 <- paste('btw(',date(anytime(input$dateSelect[1])),
                     ',',date(anytime(input$dateSelect[2])),')', sep='')

      wellInfo <- GET("https://di-api.drillinginfo.com/v2/direct-access/producing-entities",
                      add_headers(c('X-API-KEY' = key, 'Authorization' = addToken, 'Accept' = 'text/xml')),
                      query=list(drilltype = dput(input$directionSelect), state = dput(input$stateSelect),
                                 spuddate = dput(date1),
                                 #spuddate <= (as.POSIXct(as.character(input$dateSelect2, format = '%Y-%m'))),
                                 pagesize = 100000))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...