【问题标题】:Use facebook iOS SDK auth token in webview在 webview 中使用 facebook iOS SDK auth token
【发布时间】:2015-07-18 10:49:19
【问题描述】:

我正在尝试查看是否可以重新使用我在 iOS 应用程序(来自 facebook SDK)中获得的 facebook 访问令牌并将其传递给自定义 webview(登录到同一个应用程序但在网络上)。

到目前为止我所拥有的: 当前在移动设备上验证正确的应用(我的应用切换到FB应用并返回我的应用带有Token)

var accessToken = FBSDKAccessToken.currentAccessToken()
var tokenString = accessToken.tokenString

感谢任何帮助,我花了很多时间寻找解决方案,但我发现的所有线索都已过时且已弃用。

提前谢谢你!

【问题讨论】:

    标签: ios facebook webview oauth token


    【解决方案1】:

    我假设您的问题只是如何将数据从本机应用程序传递到 web 视图。 你可以用js。例如假设这是您的 webview 上的代码,它使用保存为 test.html 的访问令牌:

        <html>
          <head></head>
          <body>
              <script type="text/javascript">
                function usesAccessToken(access_token_string) {
                 // use access token 
                  alert(access_token_string);
                }
                </script>
          </body>
        </html>
    

    您可以通过以下方式将值传递给js函数:

    [self.myAppWebView loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"test" ofType:@"html"]isDirectory:NO]]];
    

    UIWebViewDelegate委托方法中:

    - (void)webViewDidFinishLoad:(UIWebView *)webView {
        NSString *accessToken = [FBSDKAccessToken currentAccessToken].tokenString;
        NSString *functionToCall = [NSString stringWithFormat:@"usesAccessToken('%@')", accessToken];
        [self.myAppWebView stringByEvaluatingJavaScriptFromString:functionToCall];
    }
    

    【讨论】:

    • 请注意,不建议在客户端共享访问令牌。
    猜你喜欢
    • 1970-01-01
    • 2013-08-10
    • 1970-01-01
    • 2017-10-20
    • 1970-01-01
    • 1970-01-01
    • 2019-07-21
    • 1970-01-01
    • 2012-09-11
    相关资源
    最近更新 更多