所以我试图将json数据发布到symfony控制器。我已经
了$(document).ready(function(){
$("#submit-button").click(function(){
$.ajax({
type: "POST",
url: "/registerTransaction",
data: { "data" : 'test' },
success: function(response) {
console.log(response);
},
contentType: "application/json",
dataType: 'json'
});
});
});
和控制器
<?php
namespace Test\MyBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
class TransactionController extends Controller
{
public function registerTransactionAction()
{
$request = $this->container->get('request');
$data = $request->get('data');
var_dump($data);
die;
}
}
我的routing.yml是
test_my_register:
path: /registerTransaction
defaults: { _controller: TestMyBundle:Transaction:registerTransaction }
但我得到的所有回复都是空的。那么我做错了什么?
答案 0 :(得分:2)
不得不改变
data: { "data" : 'test' },
到
data: '{ "data" : 'test' }',
并在控制器中使用
$data = $this->get("request")->getContent();
if(!empty($data)) {
$params = json_decode($data, true);
}