目前,我在一个项目上工作,我尝试从 AJAX 请求中获取数据,方法是“POST”。
这是我的 JS 代码:
function ajax() {
var form = new FormData();
// Data from contenteditable which is id is "title".
form.append('article[title]', $('#title').html().trim());
// Data from contenteditable which is id is "content".
form.append('article[content]', $('#content').html().trim());
// Data from input checkbox which is id is "article_parution".
form.append('article[parution]', $('#article_parution').val());
// Data from input hiden which is id is "article__token".
form.append('article[_token]', $('#article__token').val());
$.ajax({
method: "POST",
url: '{{ path("add_article") }}', // /admin/add
processData: false,
cache: false,
data: form
})
}
我已经使用“console.log()”来验证数据是否存在并且确实如此。
问题是当我尝试在我的控制器中使用它时:
$title = $request->request->get('article[title]');
$title 为空,为什么?
此外,此 URL (/admin/add) 在网站中受FosUserBundle保护(用户必须在 admin 中连接才能访问此网站部分)。