2013-11-05 4 views
1

나는 내 유성우 계정 패키지를 작성해 봤고 나는 뭔가 빠져있는 것 같다. 브라우저 나 터미널에서 오류가 발생하지 않으므로 문제를 해결하기가 어렵습니다. 내가 얻는 유일한 오류는 '로그인 서비스가 구성되어 있지 않습니다.'라는 accounts-ui 패키지 자체의 오류입니다. 누구나 볼 수 있다면 코드는 https://github.com/khamoud/meteor-accounts-stripe에서 볼 수 있습니다. 미리 감사드립니다.맞춤 유성 계정 패키지 구현

답변

4

이전에 직접 계정 패키지를 만들었으므로 동일한 서비스 (이 경우 OAuth 2처럼 보임)의 기본 계정 패키지에서 가능한 모든 작업을 수행하도록 충고해야합니다. 나는 당신이 그것을 한 것을 볼 수 있지만 사소한 차이가 있습니다.

패키지를 다운로드하여 직접 사용해 보았습니다. 필자는 Stripe API를 사용하지 않았으므로 완전히 파고 들지는 못했지만 나는 당신이 가진 것보다 더 많은 진전을 이룰 수 있다고 생각합니다.

우선 '로그인 서비스가 설정되지 않았습니다'라는 오류 메시지가 표시되지 않습니다. 패키지를 추가 했습니까? 나는 'meteor add accounts-ui'를 만들었고, 내 프로젝트의 루트에 패키지 폴더를 만들고 패키지 폴더를 붙여 넣었다. 이름을 'accounts-stripe'로 변경하고 'meteor add accounts-stripe'로 변경했다.

그런 다음 {{loginButtons}} 도우미를 페이지에 추가했습니다. 이것으로 구성 스트라이프 로그인 버튼을 얻었지만 클릭했을 때 팝업이 열리지 않습니다. js 콘솔에서 'Uncaught Error : Duplicate service : stripe'오류 메시지가 나타납니다. accounts_stripe.js 및 stripe_client.js 모두

Accounts.oauth.registerService('stripe'); 

: 문제는 당신이 선이 될 것으로 보인다. stripe_client.js에서 그것을 제거해주었습니다. 그런 다음 스트라이프에서 API 키를 추가 할 수 있습니다.

다음 문제는 이들이 제출되면 stripe_configure.js의 'clientId'에 저장 한 다음 stripe_client.js 및 stripe_server.js의 config 객체에서 appId를 사용하여 검색합니다. API 키를 제출 한 후 팝업의 로그인 URL에 정의되지 않은 client_id가 있기 때문에이 사실을 알았습니다. 'clientId'를 stripe_configure.js에서 'appId'로 변경하면 문제가 해결됩니다.

불행히도 여전히 작동하지 않습니다. 나는 팝업 창에서

{"error":{"message":"No application matches the supplied client identifier"}} 

을 얻습니다. 이것은 여러 가지 이유가있을 수 있습니다. 아마도 API 키 윈도우에서 잘못된 것을 제출했을 것입니다. 스트라이프에서 테스트 프로젝트를 사용하고 있거나 로그인 워크 플로를 잘못 구현했기 때문일 수 있습니다. Stripe OAuth 문서의 빠른 google은 client_id와 secret에 대해 잘못된 것을 제출했다고 제안합니다. 마찬가지로 내가 이전에 Stripe API를 사용하지 않았다고 말했다.

나는 그것을 고치기 시작했다.

+0

정말 고마워요! 당신은 내 디자인에 몇 가지 즉각적인 결함을 지적했고, 적어도 벗어나기 위해 오류가있었습니다. 나는 밤의 끝까지 포장을 끝내게 될 것이다 (희망을 갖고). –