2011-03-05 6 views
4

Facebookのすべてのダイアログの例は、ユーザーをhttp:// www.facebook.com/dialog/xxx?yyyの形式にリダイレクトするページを表示します。FB.UI()を使用した例を示すRequestsダイアログを除いて、 JavaScript SDKのFacebookのリクエストダイアログは、ディスプレイ:iframeまたはdisplay:ページとして機能しますか?

http://developers.facebook.com/docs/reference/dialogs/requests/

私の質問は、Facebookのドキュメントのどこにでも扱われていない、要求はhttp://www.facebook.com/dialog/apprequestsにブラウザを向けることによってアクセスすることがdislogができているのですか?...

私は、時間のためにしようとしてきたが、私は "申し訳ありませんが、エラーが発生しました。"私はそれを間違っているのか、それともできないのでしょうか?

+0

これを解決しましたか?以下の正しい答えを選んでください。 – kkampen

答えて

1

あなたは直接振る舞いページとして要求ダイアログを作ることはできませんが、リクエスト招待フォームを作成するために、あなたのアプリに、のは言わせにinvite.phpページをXFBMLfb:request-formを使用することができます。

http://developers.facebook.com/docs/reference/javascript/fb.xfbml.parse/ http://developers.facebook.com/docs/reference/fbml/serverFbml/

+0

私はFBMLまたはfb:serverFBMLを使用しないように勧められました。なぜなら、今は動作しないか、まもなく償却されるからです。 FB.UI()を使用せずにリクエストフォームを表示する方法はありますか? – user548084

+2

FBMLはXFBMLではなく廃止予定です。見てください:http://developers.facebook.com/roadmap/別の方法がある場合は、私もそれを知りたいです! –

0

http://developers.facebook.com/docs/reference/javascript/FB.ui/

"パラメータ" に見られるように、あなたは、表示パラメータを指定することができます。

FB.ui({ 
    method: 'apprequests', 
    display: 'iframe', 
    message: 'Your message', 
    title: 'Your title' 
}, function(response) { 
    alert(response.request_ids); 
}); 
0

Gokhan Ozturk氏によると、あなたはApprequestsに対して(iframeを表示する)ことができます。 JSDKて

FB.ui({ 
    method: 'apprequests', 
    display: 'iframe', 
    access_token: Users Access Token Here, 
    title: 'Sample Title', 
    message: 'Sample Message', 
    data: 'some data here', 
    filters: ['all'], 
}, 
function(response) { 
    if (response && response.request_ids) { 
    alert('Request was sent'); 
    } else { 
    alert('Request was not sent'); 
    } 
}); 

あなたはまた、(FB.initになるでしょう)が、あなたはそれを使用せずにこれを行うことができます。これは、ユーザーのアクセストークンを提供する必要があります動作するため

それでもJavaScriptのSDKからfb.ui機能へのアクセスを必要としながら、これは、私が認証するためにPHPを使用した場合、私のために働いてい

FB.init({ 
    appId: 'Application Id', 
    status: false, 
    cookie: false, 
    xfbml: false 
}); 

ユーザーのアクセストークンと認証を制御します。

表示:「IFRAME」 - すべてのダイアログのメソッドのために働く必要 「友人」、「フィード」など

1

を「送信」私はこのロットをデバッグしようとしました。

一度働いているようだ最終的なコードは、私は、これはブラウザのいずれかで動作するようになった

<iframe src="https://www.facebook.com/dialog/apprequests?access_token=xxxx&api_key=xxxx&app_id=xxxx&display=iframe&frictionless=false&locale=en_US&message=abc&next=xxxx" frameborder="0"> 

だったが、私は他のブラウザでそれをしようとすると、私は連続して以下のエラーを取得しておきます。

APIエラーコード:110 APIエラー説明:無効なユーザーID エラーメッセージ:欠落しているユーザーのクッキー(セッションのユーザーを検証する)

ユーザーのクッキーを設定するための最良の方法は何ですか? Facebook Connectの可能性はありますか? Facebook Appのどこかでこのコードを使用して、それが動作するかどうかを確認することができます。私はそれだけのクッキーの問題だと思う。私も手動で& user_idを供給しようとしたが、うまくいかなかった。

これは、http IMOでは間違いなく動作しません。httpsでなければなりません。

関連する問題