首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SFSafariViewController与Javascript

SFSafariViewController与Javascript
EN

Stack Overflow用户
提问于 2017-01-16 10:06:33
回答 1查看 2.4K关注 0票数 0

我正在开发IOS应用程序,在其中我打开了SFSafariViewController的登录页面。当登录成功时,在该登录页面上生成一个Json响应。

我想得到这样的回应并关闭SFSafariViewController。

在android系统中,我通过Javascript和Javascript接口实现了它。

我的android服务器端代码:

代码语言:javascript
复制
<?php
//curl initialize
//Some code
//Curl Execution
$response = curl_exe($ch)
?>
<script>
showAndroidToast("<?php echo $response;?>");
function showAndroidToast(res){
Android.dataResponse(res);
}
</script>

在机器人里。

Android.dataResponse(res)是我的javascript接口,我把它添加到Custom (https://developer.chrome.com/multidevice/android/customtabs)中。

我的IOS应用程序也需要类似的功能,我不知道。这在SFSafariViewController中是可能的吗?

EN

回答 1

Stack Overflow用户

发布于 2017-01-16 10:25:15

根据 StackOverflow的答案,您不能用SFSafariViewController下载文件,而且根据苹果的文档,似乎没有委托来启动JSON的下载。

考虑到这些信息,我确信您最安全的选择是走WKWebView路线,尽管WebKit在iOS上有各种限制。您可能可以使用作为起点。

我个人只需要调用我的登录API并创建一个本地登录表单,从而完全绕过Apple的浏览选项。我希望这能帮到你!

编辑

OP实际上正在使用FitBit的API和OAuth2,根据FitBit的文档:

对于本机应用程序,这意味着授权页必须在默认浏览器中打开。本机应用程序可以使用自定义URL方案作为重定向URL,将用户从浏览器重定向到请求权限的应用程序。iOS应用程序可以使用SFSafariViewController类而不是应用程序切换到Safari。禁止使用WKWebView或UIWebView类。

他们的文件中可以找到使用FitBit授权代码授权流的指针,但没有适当的指南。但是OAuthSwift支持FitBit,所以这可能是实现登录的最简单的方法。关于示例集成的讨论也可以找到这里这里

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41673846

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档