2014-06-09 5 views
1

나는 자바 스크립트 응용 프로그램에서 패킷으로 POST 데이터를 수신하고 처리하는 PHP 스크립트를 가지고 있습니다.GET 요청을 완전히 무시하는 방법?

GET 요청이 전송되고 런타임시 흐름을 방해하는 문제가 있습니다. 자바 스크립트에서 내 AJAX에 빈 응답을 보내는 것입니다. 나는 많은 노력에도 불구하고 이러한 요청의 출처를 추적 할 수 없었지만, 그들은 내 IP에서오고있다.

내 스크립트가 GET 요청을 완전히 무시하도록하려면 어떻게해야합니까? GET 요청이 보내지면 시작하지 않는 것이 이상적입니까? (그것이 지금 내가 가진 것 인 요청을 얻는 것이라면 처음에는 죽지 않을뿐만 아니라). 이런 일이 할 수있는 유일한 방법 경우입니다 -

"런타임 흐름을 방해"이러한 변수와 관련하여
unset($_GET); 

가 :

+0

을 사용할 수 있기 때문입니다, 다음 문제는 해결 될 것입니다 :) ... 오히려'$ _GET' 또는'$ _REQUEST'를 사용하십시오 – prava

+1

복제 하시겠습니까? 여기를 참조하십시오 : http://stackoverflow.com/questions/12606290/only-allow-post-requests-and-deny-all-other-request-method-using-htaccess – HaukurHaf

+0

스크립트에서만 POST를 사용하지만 GET 요청은 런타임 중에 스크립트를 시작하고 응답을 내 AJAX로 다시 보냅니다. – dlofrodloh

답변

0

당신은 당신의 스크립트의 시작 부분에 $_GET 변수 내에서 값을 대체 할 수 실제로 이러한 매개 변수를 사용하거나 구문 분석하고 있습니다. 단순히 코드에서 무시하십시오. 즉, 참조하지 마십시오.

+0

POST 데이터로 스크립트에 패킷을 보내는 자바 스크립트 앱이 있습니다. 스크립트는 데이터를 처리하고 응답을 되돌려 보내며 자바 스크립트는 다음 패킷을 보냅니다. 스크립트가 중간 처리 중 GET 요청을 받으면 빈 응답이 AJAX로 되돌아가 전체 작업을 중단하므로 원본 POST 데이터에서 응답을받지 못하여 다음 패킷을 보내지 않습니다. GET 요청의 소스를 찾을 수 없어 GET 요청을 완전히 무시해야합니다. – dlofrodloh

1

내 스크립트가 GET 요청을 완전히 무시하도록하려면 어떻게해야합니까? 은 GET 요청이 전송 된 경우 시작하지 않는 것이 가장 이상적입니까?

그렇다면 다른 요청을 시작하기 전에 요청이 GET이 아닌지 확인해야합니다.

if (strtoupper($_SERVER['REQUEST_METHOD']) === 'GET') { 
    exit; 
} 

// Now do another stuff 

PS는 $_GET 최우선 다른 슈퍼 전역에주의 - (당신이 미래의 일을 포함하는 경우) 만`, $ _POST`를 사용하는 경우 타사 라이브러리

관련 문제