Heroku でホストされる新しい Facebook アプリの作成を開始したばかりで、まだ変更を加えていませんが、機能を少しテストして、機能に慣れました。「メッセージの送信ボタン」を試すまでは問題ありません。次のエラーログを含むダイアログが表示されます。
An error occurred. Please try later
API Error Code: 100
API Error Description: Invalid parameter
Error Message: 'link' is invalid.
関連するコードを少し調べましたが、何も問題はありませんが、私はまったく新しいので、何が問題なのかを知るために少し助けてくれるかもしれません:
$('#sendToFriends').click(function() {
FB.ui(
{
method : 'send',
link : $(this).attr('data-url')
},
function (response) {
// If response is null the user canceled the dialog
if (response != null) {
logResponse(response);
}
}
);
});
私が問題があるとは思わない理由は$(this).attr('data-url');
、以下が機能するからです (壁への投稿ボタン):
$('#postToWall').click(function() {
FB.ui(
{
method : 'feed',
link : $(this).attr('data-url')
},
function (response) {
// If response is null the user canceled the dialog
if (response != null) {
logResponse(response);
}
}
);
});
}
getUrl()
値を取得する関数は次のとおりです。
public static function getUrl($path = '/') {
if (isset($_SERVER['HTTPS']) && ($_SERVER['HTTPS'] == 'on' || $_SERVER['HTTPS'] == 1)
|| isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https'
) {
$protocol = 'https://';
}
else {
$protocol = 'http://';
}
return $protocol . $_SERVER['HTTP_HOST'] . $path;
}
誰でも私を助けてもらえますか?Facebookの開発者フォーラムとstackoverflowで少し検索しましたが、エラーコードは同じでしたが、エラーメッセージが異なっていました。feed
メソッドは機能しますが、メソッドsend
は機能しないため、この問題はFacebookにあると思います。どちらのメソッドも facebook SDK で定義されています
注:最新のphp sdkを使用しています