Как мне создать объект Network.HTTP.Conduit.Request? - PullRequest
2 голосов
/ 03 апреля 2012

Попытка создать Request с помощью Network.HTTP.Conduit пакета. Инструкции:

Конструктор для этого типа данных не предоставляется. Вместо этого вы должны используйте либо метод def для получения экземпляра по умолчанию, либо parseUrl построить из URL, а затем использовать записи ниже, чтобы сделать модификация ...

Понятия не имею, что это значит. Как я могу «внести изменения» в неизменяемый объект запроса; кроме того, ни одна из функций «внизу» не возвращает a Request объект!

Насколько я понял:

main = do
    let req = def :: String
    putStrLn "What now? How do I make it a POST?"

Хотя я не уверен, почему я использовал String выше.

Любая помощь приветствуется.

1 Ответ

5 голосов
/ 03 апреля 2012

Это не совсем понятно из документации, но «функции ниже» на самом деле являются метками записей, поэтому вы можете использовать синтаксис обновления записей для создания необходимого запроса. Конечно, «изменить» здесь означает создание нового запроса на основе запроса по умолчанию, а не фактического деструктивного обновления.

Другими словами, что-то вроде этого:

let req = def { method = methodPost, ... }
...