2

我想使用 httpie 为 REST Web 服务生成文档。这个想法是有一个包含带有评论的示例请求的文本

'ping the server','http -v get :8080/ping'
'submit document','http -v post :8080/document name=asdf' 

然后脚本将执行请求并在文档中捕获格式良好的输出。

有没有办法做到这一点?

4

2 回答 2

1

我不知道通过 httpie 实现它的方法,但是有一种方法可以将格式化输出从 bash 抓取到 html:请参阅此问题或使用HTML::FromANSI perl 模块或aha工具。有很多类似的工具,选择最适合你的。

于 2014-07-27T10:06:55.957 回答
1

您也可以使用Pygments CLI ( pip install pygments)。这应该提供更干净的 HTML,并且它还让您可以从许多 Pygments 样式中选择任何一种。

{

# Stylesheet:
echo '<style>'
pygmentize -S default -f html 
echo '</style>'

# Request HTTP headers as HTML:
http --print=H httpbin.org/post hello=world | pygmentize -f html -l http /dev/stdin

# JSON request body as HTML:
http --print=B httpbin.org/post hello=world | pygmentize -f html -l json /dev/stdin

}  > request.html

输出:

在此处输入图像描述

<style>
…
</style>
<div class="highlight"><pre><span class="nf">POST</span> <span class="nn">/post</span> <span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span>
<span class="na">Content-Length</span><span class="o">:</span> <span class="l">18</span>
<span class="na">Accept-Encoding</span><span class="o">:</span> <span class="l">gzip, deflate</span>
<span class="na">Accept</span><span class="o">:</span> <span class="l">application/json</span>
<span class="na">User-Agent</span><span class="o">:</span> <span class="l">HTTPie/0.8.0</span>
<span class="na">Host</span><span class="o">:</span> <span class="l">httpbin.org</span>
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json; charset=utf-8</span>
</pre></div>
<div class="highlight"><pre><span class="p">{</span><span class="nt">&quot;hello&quot;</span><span class="p">:</span> <span class="s2">&quot;world&quot;</span><span class="p">}</span>
</pre></div>
于 2014-07-28T10:16:04.083 回答