Facebook graph api 无法使用facebook sdk for Unity中的Http.Method.delete删除apprequests

Facebook graph api 无法使用facebook sdk for Unity中的Http.Method.delete删除apprequests,facebook-graph-api,facebook-unity-sdk,Facebook Graph Api,Facebook Unity Sdk,我在我的unity游戏中使用facebook官方的unity sdk。我可以使用FB.AppRequest和FB.API(/USER_ID/apprequests,Facebook.HttpMethod.get,MY_Callback)发送/获取请求,也可以使用FB.API(/request_ID,Facebook.HttpMethod.get,Callback)读取单个请求。但是我无法使用FB.API(/request\u Id,Facebook.HttpMethod.delete,callb

我在我的unity游戏中使用facebook官方的unity sdk。我可以使用FB.AppRequest和FB.API(/USER_ID/apprequests,Facebook.HttpMethod.get,MY_Callback)发送/获取请求,也可以使用FB.API(/request_ID,Facebook.HttpMethod.get,Callback)读取单个请求。但是我无法使用FB.API(/request\u Id,Facebook.HttpMethod.delete,callback)删除请求。我在尝试删除特定请求时遇到此错误

09-23 17:45:05.798:E/Unity(3235):Web错误:java.io.FileNotFoundException:

下面是我使用的代码

FB.API("/"+FB.UserId+"/apprequests", Facebook.HttpMethod.GET, GiftCallback);
function GiftCallback(response:String){
Debug.Log(response);
var giftResponse = JSON.Parse(response);


if (giftResponse["data"][0]["data"].Value == "life"){
    Debug.Log("Life request found");
    FB.API("/"+giftResponse["data"][0]["id"].Value+"?access_token=Access_TOKEN", HttpMethod.DELETE, GiftConfirmCallback);
    Debug.Log("Delete request has been called");
    Debug.Log("Request id is"+giftResponse["data"][0]["id"].Value);
} else {
    Debug.Log("No life request found");
}
}
function GiftConfirmCallback(response:String){
Debug.Log("Gift Request delete confirmation");
}
现在,我得到了所有的调试正确,除了最后一个没有得到打印任何地方

Debug.Log(“礼物请求删除确认”)

当我观察更多的时候,我发现

Web错误:java.io.FileNotFoundException:

如果我跑

在浏览器中,它为我提供了正确的详细信息

FB.API(“/”+giftResponse[“data”][0][“id”].Value+“?访问令牌=访问令牌”,HttpMethod.DELETE,GiftConfirmCallback)

你是不是打算这样做?
FB.API(“/”+giftResponse[“data”][0][“id”].Value+”?access\u token=“+access\u token,HttpMethod.DELETE,GiftConfirmCallback)

现在,您的代码正在将键/值access\u token=“access\u token”作为url参数传递。您也可以省略access_token参数,因为如果Facebook SDK不存在,它将注入它所获得的令牌参数,因此这也应该起作用:
FB.API(“/”+giftResponse[“data”][0][“id”].Value、HttpMethod.DELETE、GiftConfirmCallback)

更新:Http.Method.DELETE问题已在最新版本中修复(Http.Method.DELETE,GiftConfirmCallback)

你是不是打算这样做?
FB.API(“/”+giftResponse[“data”][0][“id”].Value+”?access\u token=“+access\u token,HttpMethod.DELETE,GiftConfirmCallback)

现在,您的代码正在将键/值access\u token=“access\u token”作为url参数传递。您也可以省略access_token参数,因为如果Facebook SDK不存在,它将注入它所获得的令牌参数,因此这也应该起作用:
FB.API(“/”+giftResponse[“data”][0][“id”].Value、HttpMethod.DELETE、GiftConfirmCallback)


更新:Http.Method.DELETE问题已在最新版本中修复

我遇到了与您提到的相同的问题。它只发生在我的Android上,而不是iOS上。我使用了一个简单的解决方法:

FB.API ("/" + requestID + "?method=delete", Facebook.HttpMethod.GET, LogCallback);

我和你提到的问题一样。它只发生在我的Android上,而不是iOS上。我使用了一个简单的解决方法:

FB.API ("/" + requestID + "?method=delete", Facebook.HttpMethod.GET, LogCallback);

这是Facebook Unity SDK中的一个bug。正如Aaron提到的,它将在sdk的下一个版本中修复。如果其他人急于实现它,他们可以在评论中尝试@aaron提供的最新sdk。但是请记住,它还没有经过很多测试,目前还没有公开。

这是Facebook Unity SDK中的一个bug。正如Aaron提到的,它将在sdk的下一个版本中修复。如果其他人急于实现它,他们可以在评论中尝试@aaron提供的最新sdk。但是请记住,它还没有经过很多测试,目前还没有公开。

您是否使用完整的个人请求id,
,如文档中所述…?@Rohit:这是一个sdk,有一个解决方案,我们还没有完成完整的测试套件,但我不想阻止您取得进展。请随意抓取这个,并让我知道它是否解决了您的问题:@aaron感谢它在我的Android设备上工作。虽然它在unity编辑器中给了我nullreferenceexception,但这些是错误:nullreferenceexception:Facebook对象尚未加载。您是否调用了FB.Init()?FB.get_FacebookImpl()(at Assets/Plugins/FBScript/FB.cs:23)FB.Login(System.String scope,Facebook.FacebookDelegate callback)(at Assets/Plugins/FBScript/FB.cs:115)Facebook_Implementation.Start()(at Assets/Facebook_Implementation.js:54)NullReferenceException:对象引用未设置为object@Rohit:在编辑器中,需要EditorFacebook.cs进行模拟。您的项目中是否存在该类?它还需要互联网连接才能工作。谢谢!任务完成了。虽然它被删除了,但我们不希望编辑器中出现崩溃。您是否正在使用文档中描述的完整的个人请求id,
\uuu
?@Rohit:这里有一个sdk,它对此进行了修复,我们还没有完成全套测试,但我不想阻止您取得进展。请随意抓取这个,并让我知道它是否解决了您的问题:@aaron感谢它在我的Android设备上工作。虽然它在unity编辑器中给了我nullreferenceexception,但这些是错误:nullreferenceexception:Facebook对象尚未加载。您是否调用了FB.Init()?FB.get_FacebookImpl()(at Assets/Plugins/FBScript/FB.cs:23)FB.Login(System.String scope,Facebook.FacebookDelegate callback)(at Assets/Plugins/FBScript/FB.cs:115)Facebook_Implementation.Start()(at Assets/Facebook_Implementation.js:54)NullReferenceException:对象引用未设置为object@Rohit:在编辑器中,需要EditorFacebook.cs进行模拟。您的项目中是否存在该类?它还需要互联网连接才能工作。谢谢!任务完成了。虽然它被删掉了,但我们不希望编辑器中的内容崩溃。