来自Android的POST请求未在Symfony控制器中收到

时间:2015-12-17 11:09:05

标签: php android symfony request

我在Symfony Controller中检索POST数据时遇到问题。

每当我打印post,get或file变量时,数组都是空的。

编辑:我正在使用10.0.2.2

在本地环境中测试它

这是我发送数据的地方:

HttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(mContext.getString(R.string.url_home) + "en" + mContext.getString(R.string.save_sentences_route) + "/add");
HttpResponse response = null;
try {
    List<NameValuePair> params = new ArrayList<NameValuePair>(1);
    params.add(new BasicNameValuePair("text", "A"));
    httpPost.setEntity(new UrlEncodedFormEntity(params));

    response = httpClient.execute(httpPost);
    HttpEntity entity = response.getEntity();
    Log.i("TEST", "Passed httpClient.execute");
} 
catch (Exception ignored)
{
}

以下是我在Symfony控制器中收到它的方式:

$user = $this->get('security.context')->getToken()->getUser();
if (!is_object($user) OR !$this->get('security.context')->isGranted('IS_AUTHENTICATED_REMEMBERED'))
{
return new RedirectResponse($this->generateUrl('test_core_default_index'));
}

$all_users = $this->getDoctrine()->getManager()->getRepository('MyUserBundle:User');
$all_users = $all_users->findAll();

var_dump($_GET);
echo "</br></br></br><hr></br></br></br>";
var_dump($_POST);
echo "</br></br></br><hr></br></br></br>";
var_dump($_FILES);
echo "</br></br></br><hr></br></br></br>";

//deliberate bug in order to see the var_dumps and echos
return new RedirectResponse($this->generateUrl('deliberate_bug'));

我首先测试了这些而不是$ _POST和$ _GET:

$this->getRequest()->request->all();
$this->getRequest()->query->all();

以及这些:

$request->get('text');
$request->get('A'); //I was really desperate trying this.

还测试了$ _FILES,“以防万一”。

我真的不是我做错了什么。有什么想法吗?

提前致谢。

1 个答案:

答案 0 :(得分:0)

你检查过cors吗? 您可以使用此捆绑包轻松完成 NelmioCorsBundle