2016-12-09 3 views
0
내가 나를 스트라이프 내가 스트라이프 지불 필드 내 케이크 응용 프로그램에 대한 필드의 몇 형태가 CakePHP의 3

CakePHP의 3 스트라이프 지불 형태

와 함께 작동하는 방법을 이해하는 데 도움이 거기에 사람을 바라고 있어요

. Stripe 문서에서 이것은 이것을 설정하는 허용 가능한 방법 인 것 같습니다.

html로

은 매우 표준이지만, 민감한 데이터 번호, CVC, 만료 및 우편에 대한 모든 입력 이름 속성을 코드가-생략하는 방법을 확인합니다. 이름을 생략하면 해당 필드의 사용자 제공 데이터 은 양식을 제출할 때 서버에 전달되지 않습니다. 각 요소에는 나중에 설명 할 데이터 스트라이프 특성도 포함됩니다.

저는 지금 cakephp 3을 사용하고 있는데, 폼 헬퍼에 의해 생성 된 HTML에서 속성을 제거하지 못하는 것 같습니다. 'name'속성을 비워 둘 수 있습니다. 나는 스트라이프 지원으로 이것에 대해 질문했고, 그들은 약간의 애매한 말을했다. 그들은 일반적으로 매우 훌륭하지만이 경우 대답은 '미안한 것보다 안전합니다'라고 생각됩니다.

내 주요 질문은 이것입니다. 스트라이프 필드에 양식 도우미를 사용하지 않는다면 정말 중요합니까? 케이크 문서에서 찾을 수있는 가장 큰 이점은 CSRF 구성 요소가 해당 필드에서 작동한다는 것입니다. 내 앱 전체에서 CSRF 구성 요소를 사용하고 있지만 스트라이프 필드가 서버로 보내지지 않아 CSRF 구성 요소와 관련이 없습니다. 그렇지 않니?

다음은 CakePHP의 설명서에서 발췌 한 것입니다 :

CsrfComponent는 사용자의 브라우저에 쿠키를 설정하여 작동합니다. Cake \ View \ Helper \ FormHelper를 사용하여 양식을 작성하면 CSRF 토큰을 포함하는 숨겨진 필드가 추가됩니다. Controller.startup 이벤트 동안 요청이 POST, PUT, DELETE, PATCH 인 경우 요청은 구성 요소가 요청한 데이터 &과 비교할 것을 요청합니다. 이 없거나 두 값이 일치하지 않으면 구성 요소가 aCake \ Network \ Exception \ InvalidCsrfTokenException을 throw합니다.

데이터베이스에 제출되는 몇 가지 필드에 양식 도우미를 사용할 수 있으며 HTML 형식의 스트라이프 필드 만 추가 할 수 있습니까?

의미가 있습니까?

스트라이프 지원은 케이크 데이터 용과 스트라이프 데이터 용으로 분리 된 두 가지 양식을 제안했지만 문서에서는 스트라이프 필드를 약간 이상하게 보이는 서버에 제출되는 양식에 추가 할 수 있다고합니다. .

스트라이프 자신이 cakephp 결제 양식을 구성하는 방법을 잘 모르겠다 고 생각합니다.

+0

이름 속성을 'false'또는 'null'로 설정하면 어떻게됩니까? 최후의 수단으로 사용자 정의 도우미를 사용하거나 도우미를 전혀 사용하지 말고 손으로 양식을 작성하십시오. – Antoniossss

+0

피할 수 있으면 확실히'name' 속성을 포함하지 마십시오. 그건 단순히 안전하지 않습니다. 양식 헬퍼를 사용하지 않고 CakePHP에서 양식을 구성 할 수있는 방법이 있습니까? 원시 HTML에서 빌드 할 수 있습니까? – korben

답변

0

예 원시 HTML이가는 길 같습니다.

내가 한 일은 다음과 같습니다.

시작하고 양식을 종료 양식 도우미를 사용 나는 테스트하지 않았습니다 (HTML을 사용하여 케이크 양식에서

추가 된 스트라이프 필드 (이 양식을 변조하고 CSRF이 아닌 스트라이프 필드의 작동을 의미합니다) HTML 필드를 사용하여 양식 변조가 작동하는지 확인합니다. 나중에 다시 테스트 해 봅니다.)

Form 헬퍼를 사용하여 stripeToken 필드의 잠금을 해제하여 요청을 블랙홀 처리하는 양식을 사용하지 않고 양식에 추가 할 수있었습니다. .

일단이 모든 것을 설정하려면 내 컨트롤러에서 echo 디버그 ($ _ POST)를 사용하여 양식이 서버로 제출되고 스트라이프 필드가 stripeToken 만 표시되는지 확인하십시오.

그래야 정상적으로 작동하는 것으로 보입니다.

관련 문제