공유 대화 상자

공유 대화 상자는 자신의 타임라인, 친구의 타임라인, 그룹 또는 Messenger의 비공개 메시지에 개별 소식을 게시하는 기능을 제공합니다. 이 대화 상자를 사용하는 경우 Facebook 로그인이나 확장 권한이 필요하지 않으므로 웹에서 쉽게 공유할 수 있습니다.

사용자가 쿠키를 사용하여 로그인하지 않은 브라우저에 있는 경우 공유하기 위해 타겟을 선택할 수 있는 드롭다운 리스트가 표시되지 않습니다. 앱에서 공유 대화 상자 대신 피드 대화 상자를 사용하거나 iframe WebView를 사용하는 경우에도 마찬가지입니다.

네이티브 모바일 앱에서 공유 대화 상자를 구현하려면 iOSAndroid의 가이드를 읽어보세요.

통합

공유 대화 상자는 JavaScript용 Facebook SDK에서 사용할 수 있습니다. 다음 픽셀 코드를 사용하여 공유 대화 상자를 실행할 수 있습니다. URL에 대한 리디렉션도 사용할 수 있습니다. 자세한 내용은 고급 주제를 참조하세요.

JavaScript용 Facebook SDK

링크를 공유하려면 share 메서드 매개변수와 함께 FB.ui 함수를 사용하여 공유 대화 상자를 실행합니다.

링크를 공유하려면 다음을 수행합니다.

FB.ui({
  method: 'share',
  href: 'https://developers.facebook.com/docs/',
}, function(response){});
직접 사용해보세요!

Facebook에 다시 공유할 소식을 맞춤 설정하기 위해 이 URL의 페이지에 오픈 그래프 메타 태그를 포함합니다.

앱 사용자가 Facebook 로그인으로 앱을 인증한 경우에만 response.error_message가 표시됩니다.

매개변수

일반 매개변수

Javascript SDK에서는 다음 매개변수를 자동으로 제공합니다.

매개변수설명

app_id

앱의 고유 식별자로 필수 항목입니다.

redirect_uri

사용자가 대화 상자에서 버튼을 클릭하면 리디렉션될 URL입니다. URL 리디렉션을 사용할 때 필수입니다.

display

대화 상자가 렌더링되는 방식을 결정합니다.

  • URL 리디렉션 대화 상자 구현을 사용하는 경우 Facebook.com에 표시된 전체 페이지가 표시됩니다. 이 표시 유형은 page라고 합니다.
  • iOS 또는 Android SDK 중 하나를 사용하여 대화 상자를 호출하는 경우, 자동으로 지정되며 기기에 적합한 표시 유형을 선택합니다.
  • JavaScript용 Facebook SDK를 사용하는 경우, 앱에 로그인한 사용자에게는 기본적으로 모달 iframe 유형이 되며, Facebook.com의 게임에서 사용할 때는 async가 되며, 그 외 모든 사용자에게는 popup 창이 됩니다. JavaScript용 Facebook SDK를 사용할 때 필요하면 popup 유형도 강제 적용할 수 있습니다.
  • 모바일 웹 앱은 항상 기본적으로 touch 표시 유형이 됩니다.

share 매개변수

매개변수설명기본값

href

이 게시물에 첨부된 링크입니다. share 메서드를 사용할 때 필수입니다. 공유할 소식을 맞춤 설정하기 위해 이 URL의 페이지에 오픈 그래프 메타 태그를 포함합니다.

현재 URL

hashtag

개발자가 공유 콘텐츠에 추가하도록 지정한 해시태그입니다. 대화 상자에서 여전히 이 해시태그를 삭제할 수 있습니다. 이 해시태그에는 해시 기호(예: #facebook)를 포함해야 합니다.

null

quote

아티클에서 요약 인용문으로 사용자가 강조 표시하거나 개발자가 미리 정의한 링크와 함께 공유할 인용문입니다.

null

mobile_iframe

true로 설정할 경우 공유하기 버튼을 누르면 웹사이트의 맨 위의 iframe에 공유 대화 상자가 열립니다. 자세한 내용은 모바일 웹 공유 대화 상자를 참조하세요. 모바일 전용 옵션입니다.

false


응답 데이터

매개변수 설명

post_id

Facebook을 사용하여 앱에 로그인하거나 publish_actions를 부여한 경우에만 사용할 수 있습니다. 있는 경우 게시된 오픈 그래프 소식의 ID입니다.

error_message

Facebook 로그인을 사용하여 앱에 로그인한 경우에만 사용할 수 있습니다.

고급 주제

다음 고급 기능도 활용할 수 있습니다.

모바일 웹 공유 대화 상자

모바일 웹 공유 대화 상자는 iframe의 콘텐츠 위에 표시되는 기능도 있습니다. 공유 플로를 완료하고 나면 대화 상자가 해제되고 원래 콘텐츠로 다시 돌아가므로 계속하여 쉽게 사용할 수 있습니다.

코드 예시

iframe에서 모바일 웹 공유 대화 상자를 사용하려면 mobile_iframe 속성을 true로 설정합니다.

FB.ui({
  method: 'share',
  mobile_iframe: true,
  href: 'https://developers.facebook.com/docs/',
}, function(response){});
직접 사용해보세요!

URL 리디렉션

링크를 공유하려면 다음을 수행합니다.

https://www.facebook.com/dialog/share?
  app_id=145634995501895
  &display=popup
  &href=https%3A%2F%2Fdevelopers.facebook.com%2Fdocs%2F
  &redirect_uri=https%3A%2F%2Fdevelopers.facebook.com%2Ftools%2Fexplorer

참고: 이 코드를 테스트할 때 줄바꿈을 삭제합니다. 삭제하지 않으면 오류가 발생합니다.

오픈 그래프 액션

오픈 그래프 소식을 공유하려면 share_open_graph 메서드 매개변수와 함께 FB.ui 함수를 사용하여 공유 대화 상자를 실행합니다.

대화 상자로 오픈 그래프 소식을 공유하려면 다음을 수행합니다.

FB.ui({
  method: 'share_open_graph',
  action_type: 'og.likes',
  action_properties: JSON.stringify({
    object:'https://developers.facebook.com/docs/',
  })
}, function(response){});

URL 리디렉션은 표준 링크 공유와 동일한 방식으로 작동합니다.

share_open_graph 매개변수

표준 링크 공유 시와 동일한 매개변수를 사용하지만 다음 매개변수도 추가하세요.

매개변수 설명

action_type

기본 제공 좋아요 유형의 og.likes와 같이 게시할 오픈 그래프 액션 유형을 지정하는 문자열입니다. 대화 상자에서는 승인된 맞춤 유형도 지원합니다. share_open_graph 메서드를 사용할 때 필수입니다.

action_properties

사용 중인 action_type에 해당하는 매개변수를 지정하는 키/값 쌍의 JSON 개체입니다. 올바른 키/값 쌍은 API를 사용하여 오픈 그래프 액션을 게시할 때 사용할 수 있는 동일한 매개변수입니다. share_open_graph 메서드를 사용할 때 필수입니다.

share_open_graph 대화 상자는 mobile_iframe: true를 지원하지 않습니다.