Я пишу API оболочку для запроса почтовых индексов Великобритании с использованием пакета httr
, и все работает нормально, когда я использую запросы GET
. Я немного теряюсь, когда дело доходит до использования запроса POST
.
Вот что говорится в документации API:
Принимает объект JSON, содержащий массив почтовых индексов. Возвращает список совпадающих почтовых индексов и соответствующих доступных данных.
Принимает до 100 почтовых индексов.
POST https://api.postcodes.io/postcodes?q=[postcode]
Опубликовать данные
Этот метод требует публикации объекта JSON, содержащего массив почтовых индексов. Например.
{ "почтовые индексы": ["PR3 0SG", "M45 6GN", "EX165BL"] }
Я пробовал следующее:
library(httr)
pc_json <- '{
"postcodes" : ["PR3 0SG", "M45 6GN", "EX165BL"]
}'
r <- POST(paste0("https://api.postcodes.io/postcodes?q=", pc_json, encode = "json"))
Но он возвращает это:
$status 1 400
$error 1 "Отправлен неверный JSON. Вам необходимо отправить объект JSON с массивом почтовых индексов или объектов геолокации "
То же самое происходит, когда я обрезаю массив и использую это:
r <- POST("https://api.postcodes.io/postcodes?q=EX165BL")
content(r)
Я читал похожие темы здесь и здесь, но они не облегчили решение моей проблемы.
Есть идеи, как это исправить?
fromJSON()
из пакета httr. - person Luke Holcomb   schedule 24.07.2019