2011-12-21 1 views
0

FB가 비 URL 안전 코드를 보내고 있습니다. oauth 인증을 구현하는 동안 FB는 URL이 아닌 코드 매개 변수를 보내고 있습니다.FB가 비 URL 안전 코드를 보내고 있습니다.

내가 응용 프로그램을 인증 할 때 url 안전하지 않은 아래 값으로 code 매개 변수를 가져옵니다. FB는 자바 웹 응용 프로그램 내 URL에 컨트롤을 리디렉션되는

AQBQnGZgFNv5EcIB9hZI20GcUgBWru7TE-p_G5NB2HQLX87fyc463aM0BIAiBg_PwRiIuyo0KS1vrDLOLB_SQ0goY31RrNYtZ23lOeaOkGzztarMYH8bJpSYjFOgiXbPhcP6h9YCsizekmcbLpPX_3F7qhsZOLM37UGI7QysvyYOvptpgJ-fm5t-eSViIU_CQH8jTPcQu3BylUVIXS0cEt5T#___=_ 

, 내가 코드 "request.getParameter (CODE)"를 사용하여 코드 매개 변수를 얻기 위해 노력하지만 난 단지

무엇입니까

#___=_없이

AQBQnGZgFNv5EcIB9hZI20GcUgBWru7TE-p_G5NB2HQLX87fyc463aM0BIAiBg_PwRiIuyo0KS1vrDLOLB_SQ0goY31RrNYtZ23lOeaOkGzztarMYH8bJpSYjFOgiXbPhcP6h9YCsizekmcbLpPX_3F7qhsZOLM37UGI7QysvyYOvptpgJ-fm5t-eSViIU_CQH8jTPcQu3BylUVIXS0cEt5T 

은 그래서 더 계속할 수 없습니다입니다. 하지만 수동으로 매개 변수에 추가하여 올바르게 작동하는 액세스 토큰을 가져옵니다.

왜 이런 일이 발생합니까? 도와주세요.

+1

당신은 그게 내가 아는 한 빈 URL 조각의의 # _ = _ 일부를 필요가 없습니다; 어떤 문제가 코드 자체를 사용하고 있습니까? (# 이후의 부분 제외) – Igy

+0

# _ = _없이 시도해 보니 지난주에 문제가 잘 나타나고있었습니다. 매개 변수를 사용하여 코드 값을 하드 코드했는데 그 당시에는 잘 작동했습니다. 버그인지 여부는 확실하지 않습니다. – user1098255

답변

0

나는 이것이 signed_request 코드라고 생각합니다.

+0

코드를 얻으려면 https://www.facebook.com/dialog/oauth?client_id=XXXXXX& redirect_uri = https : //sjdfhskdjfhksdf.com URL을 사용하지 않았다. – user1098255

+0

예, 이것은 signed_request가 아닙니다. 코드에 아무런 도트가 없습니다. facebook.com/dialog/oauth?client_id=xxx&redirect_uri=xxx.com 코드가 반환됩니다.이 코드는 다음과 같이 사용할 수 있습니다 : 'token_url = "https://graph.facebook.com/OAuth를/access_token은? CLIENT_ID = "& APP_ID &"& redirect_uri로 = "& my_url &"& client_secret = "& app_secret &"& 코드 = "& code' 'access_token은 =의 file_get_contents (TOKEN_URL)' –

+0

그것은 참으로'signed_request' 아니다, 그것은을위한'code'입니다 OAuth2. –

0

OAuth2의 경우 #_=_ 흔적이 필요하지 않으며 signed_request 또는 code의 일부가 아닙니다. 추가 단계로 진행할 수 있다면 다른 점이 있습니다.

codeauthentication를 계속할 수 있습니다 redirect_uri URL에 전달 당신이 얻을 일단 :

당신의 응용 프로그램을 인증하기 위해

, 당신은 인증 코드와 그래프 API 토큰 끝점에 앱 비밀을 통과해야합니다 - 따라와 위와 같이 정확히 같은 redirect_uri가 - https://graph.facebook.com/oauth/access_token에 있습니다.

https://graph.facebook.com/oauth/access_token? 
    client_id=YOUR_APP_ID&redirect_uri=YOUR_URL& 
    client_secret=YOUR_APP_SECRET&code=THE_CODE_FROM_ABOVE 
+0

# _ = _없이 시도했지만 "request.getParameter (CODE)"에서 직접 코드를 가져 오려고 시도하는 잘못된 코드 예외가 표시됩니다. – user1098255

+0

자세한 정보, 예외 메시지 등을 제공 할 수 있습니까? –

+0

# _ = _ _없이 시도해 보니 지난주에 문제가 잘 나타나고있었습니다. 매개 변수를 사용하여 코드 값을 하드 코드했는데 그 당시에는 잘 작동했습니다. 버그인지 여부는 확실하지 않습니다. – user1098255