2010-02-11 5 views
2

저는 Python의 Google App Engine과 pyfacebook bindings을 사용하여 Facebook 앱을 개발했습니다. 몇 주 동안 모든 것이 잘 작동했지만 갑자기 멈추었습니다.Facebook은 POST 대신 GET을 사용하여 Google App Engine 코드를 호출합니다.

처음에는 코드 변경이라고 생각하여 전체 dev 디렉토리를 내가 아는 버전으로 롤백했으나 여전히 실패했습니다. 응용 프로그램의 설정에서 변경 한 내용으로 인해 문제가 발생했을 수 있지만, 그렇다면 무엇을 알아낼 수 없습니다.

문제는 내 메인 클래스의 게시물 (자체) 메소드를 호출하는 대신 Facebook이 GET을 사용하여 호출한다는 것입니다.

Facebook이 POST 대신 GET 방법을 사용하는 이유를 아는 사람이 있습니까? IFrame 앱입니다. 나는이 원인이었다 완전히 확실하지 않다

답변

0

있지만

덕분에, 내가 IFrame을 응용 프로그램에 FBML 응용 프로그램에서 변경이 나타납니다. FBML 모드는 POST 호출에 의존하지만 IFrame은 GET을 사용하는 것으로 보입니다. 나는이 답변을 what I read here에서 추측하고 있으며, 내가 보는 관측 에서뿐만 아니라 이것이 어떤 의미가있는 유일한 대답이라는 것을 추측하고 있습니다.

1

응용 프로그램을 사용할 때 사용자의 일반적인 흐름은 사용자가 캔버스 URL에 착신하여 시작합니다 (예 : http://apps.facebook.com/runwithfriends/). 이 시점에서 Facebook은 크롬을로드하고 애플리케이션에 태그를 렌더링합니다. 지정된 src가 없음을 알 수 있습니다. 일부 JavaScript 및 태그를 사용하여 Facebook은 애플리케이션에 POST 요청을 트리거합니다. 민감한 사용자 데이터는 POST 데이터로 전송되는 동안 HTTP Referrer 헤더를 통해 전송되지 않으므로 보안상의 이유로이 작업이 수행됩니다.