2016-06-10 5 views
0

내가 CakePHP의를 사용하여 API를 생성하지만 얻거나 예를 들어 게시 사용할 때이 메시지와 함께 올바른 결과를 얻었다 :경고 및 사용되지 않는 출력 API의 CakePHP의

추천하지 않습니다 : 자동으로 HTTP_RAW_POST_DATA가되지 않습니다 $ 및 채우기 향후 버전에서 제거 될 예정입니다. 이 경고를 피하려면 php.ini에서 'always_populate_raw_post_data'를 '-1'로 설정하고 대신 php : // 입력 스트림을 사용하십시오. 줄에 알 수없는 0

경고 :는 헤더 정보를 수정할 수 없습니다 - 이미 라인 0

에 알 수없는 전송 헤더를이 내 PHP는 fuction를이다 : 나는이 문제를 해결할 수있는 방법

public function token() 
{ 
    $user = $this->Auth->identify(); 
    if (!$user) { 
     throw new UnauthorizedException('Invalid Password or email'); 
    } 

    $this->set([ 
     'success' => true, 
     'data' => [ 
      'token' => JWT::encode([ 
       'sub' => $user['id'], 
       'exp' => time() + 604800 
      ], 
      Security::salt()) 
     ], 
     '_serialize' => ['success', 'data'] 
    ]); 
} 

?

+3

왜 이런 일이 발생하는지 스크립트를 보여주지 마십시오. 또한, 설명서를 보면 다음과 같이 설명되어 있습니다 : * 일반적으로 $ HTTP_RAW_POST_DATA 대신에 PHP/// 입력을 사용해야합니다. * – Rasclatt

+0

@Rasclatt는 여기 내 기능이고 미안합니다. 저는 cakephp와 PHP의 초보자입니다. 이 경고에 대해서는 전혀 모른다. 나는 방금이 [튜토리얼] (http://www.bravo-kernel.com/2015/04/how-to-add-jwt-authentication-to-a-cakephp-3-rest-api/)을 따랐다. –

+0

HTTP 헤더 이미 보내진 표시는, 당신의 PHP 스크립트의 일부 "출력"이 클라이언트에게 보내졌고, 파이프 라인이 헤더 라인을 조합하여 (적어도 버퍼, 첨부 된 컨텐트에 보내서) 헤더 행 변경). [PHP에서 "헤더를 이미 보냈습니다"오류를 수정하는 방법] (http://stackoverflow.com/questions/8028957/how-to-fix-headers-already-sent-error-in-php)에서 방법을 확인하십시오. 이것을 찾으십시오. – Dilettant

답변

0

확인을 나는 해결책을 발견하지만 난 몸에서 RAW를 통해 데이터를 삽입하는 경우가 우체부를 사용

을 어떻게 작동하는지 이해하지 못했다 urlencoded 그것은 잘 작동합니다. 나는 HTML없이 json 응답을 얻었다. 그것에 대한 어떤 설명?

0

'always_populate_raw_post_data'에 대한 php.ini 설정을 -1로 변경해야합니다. 내가 경고 메시지를하지만 X-WWW-형상 -를 통해 데이터를 삽입하려고 것을 가지고

+0

변경된 것과 여전히 동일한 경고 –

+0

아파치를 다시 시작 했습니까? –

+0

예 다시 시작했습니다. –

관련 문제