Javascript SDK删除请求发出意外的oautheexception

Javascript SDK delete request issuing unexpected OAuthException

本文关键字:意外 oautheexception SDK 删除 请求 Javascript      更新时间:2023-09-26

使用文档中的代码:

function deleteRequest(requestId) {
  FB.api(requestId, 'delete', function(response) {
    console.log(response);
  });
} 

返回错误:

(#2) App Request receiver Must Be Specified:此App Request的receiver必须通过用户签名的访问令牌或完全指定的App Request ID来指定。

我肯定连接到FB REST之前,有什么想法吗?

如果你的应用程序已经迁移到request2.0高效,那么requestId必须包含apprequest id和用户id之间的_(因为相同的apprequest可能被发送给多个用户)

例如

:apprequest = 1111111user_id = 2222222

则requesttid将为1111111_2222222

function deleteRequest(appRequestId, userId) {
  FB.api(appRequestId+"_"+userId, 'delete', function(response) {
    console.log(response);
  });
} 

如果你使用c# facebook SDK,你可以使用这个:

var fb = new FacebookClient(Config.FacebookAppId, Config.FacebookAppSecret);
var result = fb.Delete(string.Format("{0}_{1}?access_token={2}", facebookRequestId, facebookUserId, fb.AccessToken));

(参见此问题:Facebook删除请求)