2016-06-16 2 views
3

앱이 있습니다. 웹 앱의 첫 페이지 만 표시되는 Facebook 캔버스 앱을 만들고 싶습니다. Facebook 개발자 콘솔에 Facebook 캔버스 응용 프로그램을 만들었습니다. (보안 Canvas URL : https://example.com, 모바일 사이트 URL : https://example.com) 보안 웹 브라우저가 무엇인지 확신 할 수 없으므로 내 웹 앱의 링크를 넣습니다. 캔버스 페이지를 열면 (https://apps.facebook.com/some_id).It은 405 허용되지 않습니다. 파기 후 Facebook에서 서명 된 요청으로 내 웹 앱에 게시물 요청을 보내고 있음을 알았습니다. 웹 페이지는 페이 스북 캔버스 페이지에 있습니다. 제게이 일들이 어떻게 작동하는지 그리고 어떻게 성취 할 수 있는지 설명해주십시오. 미리 감사드립니다.plaltform facebook 캔버스 용 앱을 만들 수 없습니다.

+0

웹 앱의 첫 번째 페이지 만 표시하는 캔버스 앱을 만드는 이유는 무엇입니까? – WizKid

답변

0

Facebook은 앱 URL로 POST 요청을 보내 앱을 iframe에로드합니다. URL에서 POST 요청을 수락하지 않으면 일반적으로 405 Not allowed이 표시됩니다.

많은 웹 스페이스 공급자에는 "정적"리소스 (예 : .htm/.html 개의 파일)에 대한 POST 요청이 허용되지 않는 설정이 있습니다.

웹 서버 구성에서 변경해야합니다 (아파치의 .htaccess를 통해 가능할 수도 있지만 확실하지 않은 경우 서버 관리자/지원에 문의하십시오). 또는 다른 "파일 유형 "응용 프로그램의 기본 URL을 캔버스에로드하려는 경우 (예 : PHP를 사용할 수있는 경우), 구성은 일반적으로 PHP 스크립트에 대한 POST 요청을 기본적으로 허용합니다.

+0

POST 요청과 함께 보내는 Secure Canvas URL 및 signed_request는 무엇입니까? – 800i

+0

보안 캔버스 URL은 앱을 호스팅하는 HTTPS URL입니다. 그리고 signed_request는 app의 추가로드를 iframe에 보내고 추가 정보를 포함하는 매개 변수입니다 .https : //developers.facebook.com/docs/games/gamesonfacebook/login#parsingsr, https : // developers. – CBroe

+0

@CBroe, 안녕하세요, 제 서버는 장고를 기반으로하고 있으며 POST 요청을 처리하여 정적 HTML 페이지를 렌더링하고 있습니다. 'Postman REST Client'에서 요청을하면 웹 페이지가 렌더링되는 반면 Canvas에서는 빈 페이지가 생성됩니다. 심지어 검사가 비어있는 것을 나타냅니다 –

관련 문제