У меня проблема здесь, я продолжаю получать сообщение об ошибке, когда пытаюсь опубликовать что-то с помощью ajax (POST).Я знаю, что именно CSRF дает мне эти проблемы, и меня пытались найти решение.Тем не менее, я надеюсь, что кто-то здесь может помочь мне!
Это ошибка, которую я продолжаю получать (от инспектора Google Chrome),
* Не удалось загрузить ресурс:сервер ответил со статусом 500 (Внутренняя ошибка сервера) XHR завершил загрузку: "http://localhost/woho/ajax/images".*
PHP (контроллер)
class Ajax extends CI_Controller {
function images() {
echo 'Hello World';
}
}
Javascript
var ID = $(".imageWrap:last").attr("id");
var baseurl = "http://localhost/woho/";
var doScroll = 1;
var cct = $.cookie('csrf_cookie_name');
if (location.href == baseurl) {
$(window).scroll(function(){
if ($(window).scrollTop() > $('body').height() / 2) {
if(doScroll == 1) {
$.post(baseurl + 'ajax/images',{'id' : ID, 'csrf_token_name': cct}, function(data) {
alert(data);
$("#wrapper_content").append(data);
ID++;
});
}
}
});
}
мой CCT var fromjavascript дает мне правильный токен или «хеш», но когда javascript отправляет запрос ajax, codeigniter возвращает ошибку, например,
Обнаружена ошибка Запрошенное вами действие не разрешено.
Как это исправить? Нужно ли мне проверять токен CSRF или что-то в моем контроллере?
Я использую Codeigniter 2.0.3