안전 사회와 페이스 북 로그인과 2.2.4 응용 프로그램은에서와 같이 그 그런 파손과 너무 오랫동안 업데이 트되지 않았습니다, 난 그냥 다른 언어로 재건을 할거야 (나는 거의 스칼라를 다 했어).스칼라 내가 SecureSocial 2.1.4 사용하는 프로젝트를 인수했고 스칼라 2.2.4</p> <p>내가 업데이트에보고하고 결정을 실행
오늘 페이스 북 API에 대한 업데이트로 로그인이 깨진 것 같습니다.
로그인을 얻는 가장 빠른 경로를 알아 내려고하지만 가장 좋은 버전이 무엇인지 파악할 수 없으며 가장 간단한 버전의 scala로 제대로 작동하도록하는 방법을 알 수 없습니다. 내가 2.10로 업데이트하려고하면 Build.scala에서
, 그것은 그것1500:com.typesafe.plugin.CommonsMailerPlugin
9994:securesocial.core.DefaultAuthenticatorStore
9995:securesocial.core.DefaultIdGenerator
을 가지고, 내가 play.plugins에서
[warn] :: ws.securesocial#securesocial_2.10;2.10: not found
[warn] :: com.typesafe#play-plugins-mailer_2.10;2.2: not found
를 얻을
"ws.securesocial" %% "securesocial" % "2.1.4",
"com.typesafe" %% "play-plugins-mailer" % "2.2" exclude("org.scala-stm", "scala-stm_2.10.0"),
보여줍니다 빌드를 사용하여 관리 할 수 있었습니까
"ws.securesocial" %% "securesocial" % "M3.0-M1"
내가 securesocial 2.1.4을 사용하여 로그인을 시도 응용 프로그램을 실행하면, 내가 볼 수있는 유일한 오류가 얻을
은에서 사용자 로그인 가 없습니다. 궁극적 인 해결책은 경우
[error] application - Unable to log user in. An exception was thrown
securesocial.core.AuthenticationException: null
at securesocial.core.OAuth2Provider.doAuth(OAuth2Provider.scala:117) ~[securesocial_2.10-2.1.4.jar:2.1.4]
at securesocial.core.IdentityProvider.authenticate(IdentityProvider.scala:75) ~[securesocial_2.10-2.1.4.jar:2.1.4]
at securesocial.controllers.ProviderController$$anonfun$handleAuth$1.apply(ProviderController.scala:92) [securesocial_2.10-2.1.4.jar:2.1.4]
at securesocial.controllers.ProviderController$$anonfun$handleAuth$1.apply(ProviderController.scala:88) [securesocial_2.10-2.1.4.jar:2.1.4]
at play.api.mvc.ActionBuilder$$anonfun$apply$10.apply(Action.scala:221) [play_2.10-2.2.4.jar:2.2.4]
at play.api.mvc.ActionBuilder$$anonfun$apply$10.apply(Action.scala:220) [play_2.10-2.2.4.jar:2.2.4]
것 예외가
을 던져졌다 새 Facebook에서 API에 대한 새로운 변경 사항을 적용하도록 모델을 업데이트 할 수 있습니다.-------------- 업데이트 ---------------
더 많은 연구를 해보니 페이스 북에서 벌을 인코딩 한 url이 아닌 유효한 JSON 토큰을 반환하고있는 것 같습니다. n은 이제
https://developers.facebook.com/docs/apps/changelog#v2_3
, 당신이 2.1.4을 사용하고 있기 때문에 스칼라 또는
소스 코드에서 볼 수 있듯이 securesocila 버전은 JSON 토큰을 구문 분석합니다. https://github.com/jaliss/securesocial/blob/2.1.4-for-play24/module-code/app/securesocial/core /OAuth2Provider.scala#L72-L83 어쨌든 최신의 보안 사회 버전을 사용해 볼 수 있습니까? –
감사합니다. @AndriyKuba, 어떤 최신 버전을 명확히 할 수 있습니까? 나는''ws.securesocial "%%"securesocial "%"2.1.4-for-play24 "'를 시도했지만 발견되지 않았습니다. 이미 2.1.4를 사용 중입니다. M3.0도 사용해 보았지만 빌드 할 수는 없었습니다. 나는 Play 2.2.4를 사용 중이며 이후의 빌드와 상당히 다르다고 생각합니다. – pedalpete
또한, 내가 작업 한 패치에 대해 지적한 코드를 확인한 후에 Oauth2provider buildInfo는 두 가지 모두에서 동일합니다. – pedalpete