【发布时间】:2012-02-23 20:39:50
【问题描述】:
我将 jquery ajax 用于某些功能,例如用户单击“获取代码”按钮,对 symfony2 控制器操作之一发出 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('info@mymail.com')
->setTo('mymail@email.com')
->setBody($code);
$this->get('mailer')->send($message);
return true;
}
}
我的代码有什么问题还是我缺少任何 ajax 设置参数。
【问题讨论】:
-
错误 500 表示任何导致没有响应的服务器端问题...您应该使用 FireBug for Firefox 之类的工具对其进行调试,在控制台选项卡中,您可以查看由提供的错误信息Symfony 异常处理程序...