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


POST request from Android not received in Symfony controller

我在Symfony控制器中检索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,"以防万一"。

我真的不知道我做错了什么。知道吗?

提前谢谢。

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