2

试图构建一个Request带有Network.HTTP.Conduit的包。指令是:

此数据类型的构造函数未公开。相反,您应该使用def方法检索默认实例,或使用 parseUrl 从 URL 构造,然后使用下面的记录进行修改...

我不知道这是什么意思。如何对不可变的 Request 对象进行“修改”;此外,“下面”的所有函数都没有返回对象Request

据我所知:

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

虽然我不确定我为什么在String上面使用。

任何帮助表示赞赏。

4

1 回答 1

5

从文档中看不清楚,但“下面的函数”实际上是记录标签,因此您可以使用记录更新语法来构造您想要的请求。当然,这里的“修改”是指基于默认请求创建一个新请求,而不是实际的破坏性更新。

换句话说,是这样的:

let req = def { method = methodPost, ... }
于 2012-04-03T15:16:55.307 回答