2016-04-22 25 views
0

我有2個ajax調用相同的域,但第一個結果是成功。第二個(foo函數)得到「CORS丟失」錯誤,並且呼叫被阻止。cors起源失蹤 - symfony ajax - 2調用同一起源

   $.ajax({ 
        url : "http://box.domain.com/next", 
        method: "POST", 
        data : JSON.stringify({ 
         token : token, 
         last_played : last_played 
        }), 
        success : function(d){ 
         foo(); 
        }, 
        error : function(d){ 
         console.log(d.statusText); 
         state = "ERROR"; 
        } 
       }); 
      function foo(){ 
       $.ajax({ 
        url : "http://box.domain.com/helo", 
        method : "POST", 
        data: JSON.stringify({ 
         mac: "addr", 
         pwd: "pwd" 
        }), 
        success: function (d) { 
         if (d.res == 200) { 
          token = d.token; 
          state="READY"; 
         } 
        }, 
        error : function(d){ 
         console.log(d.statusText); 
         state = "ERROR"; 
        } 
       }); 
      } 

symfony的控制器具有$this->response->headers->set('Access-Control-Allow-Origin', 'http://www.domain.com');__construct功能和2個呼叫指向在同一個控制器的操作。

爲什麼第一個成功,第二個失敗?

+0

最後,您可以看到,如果你的路線只有autorize與應用程序/控制檯調試GET方法:路由器 –

回答

1

解決這個我不得不把

<IfModule mod_rewrite.c> 
    Header set Access-Control-Allow-Origin "http://www.domain.com" 
    </IfModule> 

.htaccess(網絡文件夾)