Http 在wreq中发送数据(非表单)
给出表格的Http 在wreq中发送数据(非表单),http,haskell,Http,Haskell,给出表格的curl请求: curl --header "Content-Type: text/xml;charset=UTF-8" --data @somefile.xml http://httpbin.org/post 我们怎样才能做到这一点?我通过echo确认数据是作为“数据”发送的,下面是来自httpbinpost-echo的片段: { "args": {}, "data": "<file-contents here sent by curl --data optio
curl
请求:
curl --header "Content-Type: text/xml;charset=UTF-8" --data @somefile.xml http://httpbin.org/post
我们怎样才能做到这一点?我通过echo确认数据是作为“数据”发送的,下面是来自httpbin
post-echo的片段:
{
"args": {},
"data": "<file-contents here sent by curl --data option>",
"files": {},
"form": {},
"headers": {...
...},
"json": null,
"origin": "some_ip",
"url": "http://httpbin.org/post"
}
{
“args”:{},
“数据”:“,
“文件”:{},
“形式”:{},
“标题”:{。。。
...},
“json”:null,
“来源”:“一些知识产权”,
“url”:”http://httpbin.org/post"
}
因此,基本上,假设文件中的数据是
文本
或字符串
,我们如何在wreq
中使其可邮寄
,而不使用表单
或多部分
(除非curl的数据
选项只是表单
或多部分
变相发布)?我正在翻阅wreq
文档,但还没有找到任何相关信息。我将非常感谢关于如何做到这一点的指点。如本教程所示,在wreq
中设置headers
和其他内容非常简单。虽然wreq
haddock只处理Postable
的一些实例,但实际上也有Postable
用于普通的惰性和严格的ByTestRing,这些应该可以让您直接流式传输原始数据。您是否尝试过直接使用ByteString
调用post
?@sclv,是的。我发现Postable
类实例记录在Network.Wreq.Types
下,但仅在hackage上的旧版本中。这就是为什么在最新文档中搜索Postable
实例时,我没有发现任何实例:(@sclv,您可以将其作为答案发布,并链接到相关的Postable
实例文档(即使是旧的)。下面是指向实际github源代码的链接,其中包含Postable
实例的定义: