2014-04-04 3 views
1

도구가있는 사이트가 있습니다. 이 도구는 클라이언트가 파일을 저장 한 후 로컬 PDF를 저장하는 HTML 양식입니다. 양식이 작동합니다. PayPal은 지불을 위해 통합 될 수 있습니다.HTML 파일에 대한 액세스 권한을 부여합니다.

모든 코드는 자바 스크립트를 통해 클라이언트 측에서 실행됩니다. 내 서버에 데이터 나 자격 증명을 저장하고 싶지 않습니다.

내가 이해할 수없는 것은 누군가가 지불 할 때까지이 특정 HTML 파일을 보호하는 방법입니다. 아마 48 시간 동안 또는 그 이상이 지속되는 파일 이름에 대해 무작위화된 문자열을 원했습니다. 이 시점에서 무엇을 검색해야할지 모르겠습니다.

사이트 백엔드는 node.js이며 도움이되는 경우 Foundation CSS를 사용합니다.

미리 감사드립니다.

+1

클라이언트에서 * 아무 것도 * 보호 할 수 없습니다. – Pointy

+1

고유하게 생성 된 파일 이름이 계정에 연결되어이 작업을 처리하는 일반적인 방법입니다. 그런 다음 파일을 다운로드하는 데 너무 오래 걸립니다. –

+0

페이팔과 지불 태그를 제거 할 준비가되었습니다.이 중 하나와 관련이없는 것 같아요. 그렇지만 지불이 성공했을 때 알림을받는 방법을 궁금해하신 것 같습니다. 그럴까요? – SgtPooki

답변

2

언급 한 것처럼 고유 한/임의의 파일 이름을 사용하고 x 시간이 지나면 파일 이름이 만료되면 난독 화되지만 보호/보호되지 않습니다. 난독 화는 아마 당신의 요구에 충분하지만, 우리가 공식 StackOverflow 답으로 제공해야하는 것은 아닙니다 ... 그래서 계속하겠습니다.

당신이 그 중 하나를 가지고있는 것처럼 들리 겠지만, "저렴한 셀프 도움말/방법에 대한/etc/pdf 판매는 실제로 무료이어야하며 아마 어딘가에있을 것입니다."웹 사이트 유형입니다. 나는 당신의 제품이 환상적이며 최상의 품질을 가지고 있다고 확신하지만, 내가 언급하고있는 사이트를 알고 있고 제 가정이 정확하다면, 아래 정보가 도움이 될 것입니다.

  1. 사용자는
  2. 사용자가 페이팔로 리디렉션됩니다 귀하의 사이트에 양식을 채우고, 또는 "로 불린다 : 나는 당신의 요구를 이해

    는 지금까지, 당신은 다음과 유사한 비즈니스 로직의 버전을 원하는 액션 "페이팔 버튼.

  3. 사용자가 지불하거나 지불하지 않음
  4. 사용자가 다운로드 한 파일/지불 한 파일에만 액세스합니다.

몇 가지 옵션은 당신이 할 수 있습니다 : 모든 사용자가 동일한 파일을 받고있다

경우, 아래의 방법이 비슷해야하지만, 간단

  • 사용자가 설정 확인 사용자를 위해 생성 한 고유 ID에 사용중인 PayPal 결제 방법에 대한 CUSTOM 값 및 수집 할 수있는 경우 이메일 주소. 그런 다음 PayPal's IPN을 사용하여 지불을받을 때까지 기다리십시오. 이 IPN 알림에는 파일 당 지불 당 사용자별로 고유 한 결제에 대한 사용자 지정 값이 있으며, 해당 이메일로 이메일을 보내면됩니다.
  • PayPal's Encrypted Website Payments API을 사용하여 node.js를 사용하여 보안 버튼 (패스 BUTTONCODE = ENCRYPTED)을 만드십시오. 보안 단추는 양식 변수를 노출시키지 않으므로 클라이언트는 비밀 파일이있는 RETURNURL에 액세스 할 수 없기 때문에 클라이언트가 다운로드하려고 시도 할 수 없습니다. 버튼을 해독 할 방법을 찾은 경우 48 시간 만료보다 훨씬 오래 걸릴 수 있습니다. 어느 쪽이든, 나는 사용자가 귀하의 제품에 관심을 가지지 않을 것으로 의심합니다.

서버에 사용자 자격 증명을 저장하지 않으면이 작업을 수행 할 수있는 방법이 더 많지만 서버에 특정 유형의 데이터 (코드 참조)를 저장하지 않으면이를 수행 할 수 없습니다.

+0

나는 당신이 언급하고있는 사이트를 알고 있으며 그것은 분명히 한 두 단계 이상입니다. :) 너는 무언가에 위에있다. 내가이 모든 것을 처음 접했을 때 간단하기를 원했기 때문에 전체 샘플이 담긴 도구를 설명하는 페이지를 가지고있을 생각이었습니다. 그들이 구매를 선택하면 페이팔 버튼을 클릭하고 지불하십시오. 일단 지불되면이 페이지로 다시 연결됩니다. 암호화 된 웹 사이트 결제 API가 여기에있는 방법이라고 생각하십니까? –

+0

도구는 다운로드하는 것이 아니라 액세스 할 수있는 HTML 페이지입니까? - 단순히 페이지에 대한 액세스를 허용하는 고유 ID를 가지고 비즈니스 케이스에서 작동하는 경우 EncryptedWebsitePayments API (또는 Express Checkout API)를 사용하면 구매자의 반환 URL을 숨길 수 있으므로 올바른 페이지로 안내됩니다. 지불. – SgtPooki

+0

하지만 그들은 다른 사람들에게 그 URL을 제공 할 수 있습니다 .. 그래서 당신은 분명히 당신이 페이지를 1 액세스 후에 또는 X 시간 후에 만료시킬 수 있는지 확인하기를 원할 것입니다. 사용자가 "헤이, 나는 페이지에 액세스하지만 그 다음 브라우저가 죽어서 파일을 다운로드하지 못했습니다. "그러면 PayPal에서 결제를 확인할 수 있습니다 .. 거래 ID와 날짜를 묻습니다. 구매자와 지불 자의 거래 ID는 다르지만 지불을 확인하기에 충분해야합니다. – SgtPooki

관련 문제