私はforgot_password
のように私のコントローラのメソッドを持って、login
などAJAXによってのみ呼び出されるコントローラメソッドはプライベートですか?
これらは、唯一のAJAX経由で呼ばれていますが、デフォルトでは、あなたが原因CIが動作する方法にURLを経由して、それらを参照することができます。
私はどうにかそれらを非公開にしても、AJAX経由でアクセスできますか?何がここで終わったの?
私はforgot_password
のように私のコントローラのメソッドを持って、login
などAJAXによってのみ呼び出されるコントローラメソッドはプライベートですか?
これらは、唯一のAJAX経由で呼ばれていますが、デフォルトでは、あなたが原因CIが動作する方法にURLを経由して、それらを参照することができます。
私はどうにかそれらを非公開にしても、AJAX経由でアクセスできますか?何がここで終わったの?
ajaxリクエストをテストする場合は、このようなものが役立ちます。
EDIT:CIには、ajaxリクエストを検出するヘルパー機能があります。 答えは
if (isset($_SERVER['HTTP_X_REQUESTED_WITH']) && $_SERVER['HTTP_X_REQUESTED_WITH']=="XMLHttpRequest")
{
// most probably ajax request
}
else
{
echo "not sure";
}
古くなって、ここでのベストプラクティスは、あなたがそれらのいずれかが正しいと感じた場合に、その答えを受け入れ$this->input->is_ajax_request()
if(! $this->input->is_ajax_request()) {
redirect('404');
}
を使用することです!他の人たちがあなたの答えの選択を中継するとき。 –