2016-03-20 30 views
0

我正在使用Symfony 2.5.12做一個後臺圖像上傳表單(是的,我知道我有點過時了,但我會盡快工作:) )。我想通過AJAX上傳圖片,但是我發送的每個AJAX請求都會重定向到登錄表單。Symfony2發回每個AJAX請求的登錄表格

這裏是我的東西JS部分(這很簡單,因爲目前我只想做一個成功的AJAX調用沒有302重定向到登錄頁面,所以我刪除了這些數據相關的東西):

form.addEventListener('submit', event => { 
    event.preventDefault(); 

    const url = form.getAttribute('action'); // '/admin/uploadImage' 

    fetch(url) 
     .then(response => response.json()) 
     .then(data => console.log(data)) 
     .catch(error => console.error(error)); 
}); 

這裏是我在我的控制器行動,勢必/管理/ uploadImage網址:

public function uploadAction() { 
    return new JsonResponse(array('test' => 'hello world')); 
} 

每/管理URL需要ROLE_ADMIN角色,我在security.yml定義它

這樣,當我想訪問這種URL時,登錄表單顯示是正常的。但是當我觸發我的AJAX呼叫時,我已經登錄了,因爲我在/ admin/gallery頁面上。

有沒有人可以弄清楚我在做什麼?

非常感謝。

+0

Cookie是否通過AJAX請求發送? – Miro

+0

沒有任何內容引用請求標頭中的Cookie。 – Cyrille

回答

0

我絕對不知道爲什麼,但似乎這個問題與whatwg-fetch獲取實現有關。我用axios替換它,問題消失了。