所以我使用以下代码发送ajax请求
$.ajax({
type: 'POST',
url: base_url + "/notifications/send_notification",
dataType: 'json',
data: {
action: 'action_complete',
entity_id: 31
}
});
此代码在我的本地计算机上运行良好,但是当我将其上传到我们的服务器(现在已经设置了SSL),并尝试通过https而非http进行时,它会提供一个" 500内部服务器错误"
" base_url"变量确实包括" https"网址。
编辑: 以下是该网络的屏幕截图> Chrome中的标题标签:
答案 0 :(得分:1)
如果base_url
是您所在的网站,我的意思是,如果您在https://www.example.com中输入您的网站,并且base_url
位于https://www.example.com/notifications/send_notification,请尝试省略{{} 1}}来自base_url
参数。
如果url
是其他网站,则可能是某些跨网站脚本问题。
如果不是上述内容,则可能是服务器的问题。你确定SSL证书好吗?如果它是自签名的,那么您需要先在浏览器中“批准”它。
最后,您可以检查确切的发送/接收数据,例如Chrome,只需F12并检查base_url
(必须在提出请求之前打开)。
此外,您可以直接向Fiddler请求该URL(如果它是POST,如果它是GET,那么只需使用浏览器进入它)。
答案 1 :(得分:0)
从浏览器执行网络监控,以读取500内部服务器错误响应的正文。如果您要发送JSON,请确保应用AllowGet: true
。
您可以发布响应正文的屏幕截图,如下所示: