2014-06-12 7 views
0

GET/POST 요청 중에 인증 토큰 및 서명을 보내려고합니다. 우리는 body 또는 매개 변수를 통해 보안 정보를 보내는 것을 선호하지 않습니다. 그래서 우리는 요청에 따라 헤더를 보내기로했습니다.헤더를 GET/POST 요청으로 설정

우리가 검색했을 때 우리는 아약스 게시물 요청을 사용하여이를 수행 할 수 있음을 알아야합니다. 그러나 헤더가있는 다음 페이지로 이동하려고합니다.

어떻게 구현할 수 있습니까?

편집 :

우리는 쿠키에 이러한 정보를 저장하는 계획을 가지고 있었다. 그러나 iPhone에서 쿠키가 비활성화 된 경우 당사 웹 사이트의 동작이 변경됩니다. 극복하기 위해 우리는 헤더를 통해 보낼 계획입니다.

답변

0

ajax 요청에서 X-AUTHENTICATION-TOKEN을 다음과 같이 설정할 수 있습니다.이 요청은 ajax 요청을 통해 실시간 REST API 호출에 사용됩니다.

$.ajax({ 
    type: "GET", 
    beforeSend: function (xhr) { 
     xhr.setRequestHeader('X-AUTHENTICATION-TOKEN', 'token string'); 
    }, 

서버 측 그래서 여기 $request_header 토큰 될 것입니다 당신이

if (isset($_SERVER['HTTP_X_AUTHENTICATION_TOKEN'])) { 
    $request_header = $_SERVER['HTTP_X_AUTHENTICATION_TOKEN']; 
} else { 
    if (function_exists('getallheaders')) { 
     foreach (getallheaders() as $header_name => $header_value) { 
      if ($header_name == 'X_AUTHENTICATION_TOKEN') { 
       $request_header = $header_value; 
      } 
     } 
    } 
} 

이있을 수 있습니다

header('Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept, X_AUTHENTICATION_TOKEN'); 

그리고 서버 측에서 데이터를 검색하는 등의 헤더 뭔가를 설정하고 있어야합니다 유효성 검사를 위해 서버 측 스크립트에서 이것을 사용할 수 있습니다.

+0

그러나 Ajax 호출을 통해 다음 새 html 페이지로 이동할 수 없습니다. 헤더가있는 다음 페이지로 이동하고 싶습니다. – stefun

+0

토큰을 동봉 한 아약스를 사용하여 요청을 보내지 않으셨습니까? 새 html 페이지를 이동하면 무엇을 의미합니까? EMBER.JS에서 우리는 토큰이 쿠키에 저장되고 html 페이지를 통해 다른 서버 요청으로 이동할 때 토큰이 보내지고 브라우저가 닫히면 쿠키가 삭제되는 이런 종류의 작업을 수행합니다. –

+0

'양식 제출'과 '세부 정보 표시'라는 두 개의 html 페이지가 있다고 가정 해보십시오. html 페이지의 submit 버튼을 클릭하면 'submit form'데이터가 서버에 저장되고 새로운 html 페이지 'display details'가 표시됩니다. – stefun

관련 문제