如何使用HTTPie发送POST请求?

时间:2015-10-14 15:05:15

标签: http post silex httpie

我有一个基本的silex应用程序,我尝试使用HTTPie进行测试。然而,当使用:

发布时
http POST http://localhost:1337 data="hello world"

data,我通过以下方式从Request对象获取:

$data = $request->request->get('data');

将永远为空。这有什么问题?

2 个答案:

答案 0 :(得分:7)

这是一个httpie使用问题,因为form标志是必需的,因为silex要求参数进行表单编码,但HTTPie的默认值是传递JSON对象。

$ http --form POST http://localhost:1337 data="hello world"

HTTP/1.1 200 OK
Cache-Control: no-cache
Connection: close
Content-Type: application/json
Date: Wed, 14 Oct 2015 15:04:09 GMT
Host: localhost:1337
X-Powered-By: PHP/5.5.9-1ubuntu4.13

{
    "message": "hello world"
}

答案 1 :(得分:0)

只是为了澄清kOpernikus所说的内容,当您使用httpie发出POST请求时,请使用以下语法:

   http --form post :3000/register username="gilbert" password="stackoverflow!"