gpt4 book ai didi

facebook - 撤销 Facebook iOS SDK v4.x 中的权限不更新 currentAccessToken 权限

转载 作者:行者123 更新时间:2023-12-03 07:33:07 26 4
gpt4 key购买 nike

在我的应用中,我想使用 Facebook 的 iOS SDK v4.x 撤销 Facebook 的 publish_actions 权限。 (我在 4.5.1 版本上使用 FBSDKCoreKitFBSDKLoginKitFBSDKShareKit 作为 pod。)它正在工作有点像我所期望的那样 - 它返回成功,当我随后使用 Graph API Explorer 获取权限时,它显示 publish_actions 被拒绝。但是,如果我在执行此操作后在本地检查 FBSDKAccessToken 的权限,则不会说 publish_actions 已被拒绝。我认为这是因为 FBSDKAccessToken 被缓存了。由于我没有在文档中看到需要更新它,所以我认为我错过了一些东西或者只是做错了一些事情。所以我想知道是否有人遇到过这个问题并解决了它。

我用来撤销权限的代码如下:

request = FBSDKGraphRequest.alloc.initWithGraphPath("me/permissions/publish_actions",
parameters: {"fields" => ""},
tokenString: FBSDKAccessToken.currentAccessToken.tokenString,
version: nil,
HTTPMethod: "DELETE")
connection = FBSDKGraphRequestConnection.new

connection.addRequest(request, completionHandler: lambda {|connection, result, error|
if !error && result["success"] == true
# Revoking the permission worked
else
# Things went wrong
end
})
connection.start

最佳答案

我明白了这一点。我以为 FBSDKAccessTokenrefreshCurrentAccessToken 触发了另一次重新身份验证,但事实并非如此。因此,只需在撤销权限后调用该方法即可刷新权限状态。就像文档所说的那样!这是我的完整方法:

request = FBSDKGraphRequest.alloc.initWithGraphPath("me/permissions/publish_actions",
parameters: {"fields" => ""},
tokenString: FBSDKAccessToken.currentAccessToken.tokenString,
version: nil,
HTTPMethod: "DELETE")
connection = FBSDKGraphRequestConnection.new

connection.addRequest(request, completionHandler: lambda {|connection, result, error|
if !error && result["success"] == true
# if revoke is successful, refresh permissions cache so
# FBSDKAccessToken no longer says publish_actions is enabled
FBSDKAccessToken.refreshCurrentAccessToken(lambda {|connection, result, error|
# FBSDKAccessToken permission state is up to date
alertTitle = "Permission successfully revoked";
alertText = "This app will no longer post to Facebook on your behalf."
})
else
alert("There was an error", error.description)
end
})
connection.start

关于facebook - 撤销 Facebook iOS SDK v4.x 中的权限不更新 currentAccessToken 权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32170426/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com