1
jquery ajaxを「コードを取得」ボタンをクリックするなどの特定の機能に使用している場合、ajaxリクエストはsymfony2コントローラアクションの1つに行われます。私が試してみると、firebugコンソールをチェックすると500の内部エラーが発生しています。ここでSymfony 2:JQuery Ajax、内部サーバエラーが500件発生する
は、Ajaxコードは(FOSJsRoutingBundleを使用)です:
<script type="text/javascript">
$(document).ready(function() {
var locale = '{{ app.request.get('_locale') }}';
$('.codeBtn').click(function(){
$.ajax({
url: Routing.generate('gd_getcode',{ '_locale': locale}),
success: function(html){
alert("Successful Response from server");
}
});
});
});
ここに私のコントローラのアクションです:
public function getCodeAction()
{
if ($this->container->get('request')->isXmlHttpRequest()) {
$code = rand(1,9999);
$this->getUser()->setAttribute('transactionCode', $code);
$message = \Swift_Message::newInstance()
->setSubject("Code")
->setFrom('[email protected]')
->setTo('[email protected]')
->setBody($code);
$this->get('mailer')->send($message);
return true;
}
}
は私のコードでは何も悪いことですか私は、Ajaxのいずれかをしないのです設定パラメータ。
エラー500は、レスポンスが存在しないサーバーサイドの問題を意味します... Firefox用のFireBugのようなツールConsoleタブで、Symfony例外ハンドラが提供するエラー情報を確認できます。 – AlterPHP