Javascript SDKを使用してアプリケーションリクエストを削除しようとすると、「load-error:unknown」というエラーオブジェクトがFireBugに返されます。Javascript SDKでapprequestを削除しようとしたときに 'load-error:unknown'が表示される
これはPHPとJS SDKの両方を使用したテストアプリケーションです。
<?php
// This loads the PHP SDK and pulls a user's apprequests
require 'fb-sdk/facebook.php';
$facebook = new Facebook(array(
'appId' => 'APP_ID',
'secret' => 'APP_SECRET',
));
$user = $facebook->getUser();
if ($user) {
try {
$user_profile = $facebook->api('/me');
$user_requests = $facebook->api('/me/apprequests');
$apprequests = $user_requests['data'];
} catch (FacebookApiException $e) {
echo '<pre>'.htmlspecialchars(print_r($e, true)).'</pre>';
$user = null;
}
}
?>
// This spits out a table of requests with links to delete them.
// The table doesn't reload when you delete a request so you have to refresh.
<table>
<?php foreach ($apprequests as $apprequest) { ?>
<tr>
<td><a href="" onClick="deleteRequest('<?php echo $apprequest['id']; ?>')">Delete</a></td>
</tr>
<?php } ?>
</table>
// This loads the JS SDK and makes a function to delete requests.
<script>
function deleteRequest(requestId) {
FB.api('/' . requestId, 'delete', function (response) {
console.log(response);
// Will have a function to reload the table...
});
}
window.fbAsyncInit = function() {
FB.init({
appId: '<?php echo $facebook->getAppID() ?>',
cookie: true,
xfbml: true,
oauth: true
});
};
(function() {
var e = document.createElement('script'); e.async = true;
e.src = document.location.protocol +
'//connect.facebook.net/en_US/all.js';
document.getElementById('fb-root').appendChild(e);
}());
</script>
私は、このWebフォームを使用して手動で要求を削除することができますので、deleteRequest作品を知っている:
<input type="text" name="manReqId"></text>
<input type="button"
onClick="manDelRequest(); return false;"
value="Delete request"
/>
<script>
function manDelRequest() {
deleteRequest(document.getElementsByName("manReqId")[0].value);
}
</script>
この方法は、放火犯に「真」を返します。
私はonClick値を書き込む方法に何か問題があると仮定しています。誰か助けてくれますか? JavaScriptのSDKに言えば
タグが問題です。 タグ、または
タグにさえあれば、onClickが動作します。 –
タグのhref値を ""から "#"に変更すると、この問題が解決しました。 –