2017-09-07 16 views
0

私のsymfonyプロジェクトでは、データをチェックするためにdump()でAjaxリクエストのコンテンツを取得しようとしています。目的は、SQLリクエストを行うためにこのデータを処理することです。私のコントローラーでは、ダンプをすると、残念ながら私は戻ってきていないのですか?ajaxリクエストの内容を取得する方法

この私のjs:

eventResize: function(event) { 
     console.log("eventResize : ok"); 
     var start1 = event.start.format("YYYY-MM-DD HH:mm:ss"); 
     var end1 = event.end.format("YYYY-MM-DD HH:mm:ss"); 
     var xhr = $.ajax({ 
      type: "POST", 
      url: 'http://localhost/.../update', 
      data: 'action=update&title=' + event.title + '&start=' + start1 + '&end=' + end1 + '&id=' + event.id, 
      dataType: 'html', 
      success: function(data) { 
       console.log(data); 
       window.location.reload(true); 
      }, 
      error: function() { 
       alert("error"); 
      }, 
     }); 
    }, 

と、この私のcontroler:

public function updateEventAction(Request $request) 
{ 
    if ($request->isXmlHttpRequest()) 
    { 
     dump($request->request->get(''));die(); 
    } 

} 

は誰もが、私を助けてくださいすることができます!?

+0

を返さなければならないので、あなたのコードが失敗することを念頭に置いて撮ります'data:{" action ":" update "、" title ":event.title、" start ":start1' ...など。次に、あなたがやっているように生のクエリ文字列を作成することから、どんなURLエンコーディングの問題にも遭遇することはありません。代わりに、jQueryがあなたのためにそれを処理します。とにかく、応答が得られない場合は、ブラウザのコンソールとネットワークタブでエラーを確認し、そこにあるものを確認してください。それはあなたに何が悪くなったかの手がかりを与え始めるでしょう。あなたは実際のAjaxリクエスト自体を見ることができ、返されたステータスと応答内容(もしあれば)を見ることができます。 – ADyson

答えて

0

まず、開発環境へのAJAXリクエストを作成していることを確認してください。

死ぬと、symfonyの実行が停止するので、ダンプは決して印刷されません。

プロファイラからデバッグできます。

プロファイラページの左側のメニューで、「最後の10」ボタンを使用して古いリクエストを表示できます。見たいと思う要求を選んでください。そこでは、あなたは "debug"セクションでダンプを見ることができるはずです。

また、symfonyのコントローラは、オブジェクト、例えばとしてデータを渡すために、より良いレスポンスタイプ(return new Response()

関連する問題