【问题标题】:What redirect URL to use when redirecting ionic for third party webflow为第三方 webflow 重定向 ionic 时使用什么重定向 URL
【发布时间】:2014-12-20 15:06:07
【问题描述】:

我正在开发一个离子移动应用程序,我想在其中重定向到请求用户同意并重定向到回调 url 的第三方 web 流,我应该专门为我获取令牌作为权限令牌以进行进一步的 API 调用。由于 ionic 本身是一个 html5 移动应用程序,我应该为重定向 url 指定什么,以便控件返回到我的移动应用程序?

【问题讨论】:

    标签: android ionic-framework hybrid-mobile-app


    【解决方案1】:

    摘要:

    这不是您所要求的,但效果很好。

    想法是你使用 $cordovaInAppBrowser 打开一个 webview 并监听事件,即 $cordovaInAppBrowser:loadstart

    $cordovaInAppBrowser:loaderror

    然后您可以查看传递的错误和事件参数并使用它们来确定是否要调用

    $cordovaInAppBrowser.close();

    这会让你回到你的 ionic 应用

    代码:

    angular.module('myApp', ['ionic', 'ngCordova']).controller('AppCtrl', function($rootScope, $ionicPlatform, $cordovaInAppBrowser) {
        $scope.openThirdPartyWhatever = function() {
          $ionicPlatform.ready(function() {
            var options = {
              location: 'yes',
              clearcache: 'no',
              toolbar: 'yes'
            };
            $cordovaInAppBrowser.open('http://www.myAwesomeSite.com', '_blank', options)
          });
        };
    
        //at some point your app tries to load 'http://localhost:8100/send-me-back-to-app'
        $rootScope.$on('$cordovaInAppBrowser:loadstart', function(e, event) {
          //and this function is called, so you do something like
          if(event.url === 'http://localhost:8100/send-me-back-to-app'){
            $cordovaInAppBrowser.close();
          }
        });
    
        $rootScope.$on('$cordovaInAppBrowser:loaderror', function(e, event) {
          $cordovaInAppBrowser.close();
          alert('sorry, something went wrong');
        });
      });
    

    有用的链接:

    https://www.genuitec.com/products/gapdebug/

    http://ngcordova.com/docs/plugins/inAppBrowser/

    【讨论】:

      【解决方案2】:

      听起来你需要处理弹出和重定向,你需要安装cordova“inappbrowser”插件才能在应用浏览器中打开第三方webflow,然后恢复正常。

      请查看这篇文章,他们在其中解释如何使用带有 Ionic 和 cordova 的 firebase 登录方法来处理 facebook 身份验证。它描述了解决问题所需的非常相似的步骤。

      Firebase simple login with Ionic and Cordova

      如果您急于从“让它在模拟器中工作”开始,但我建议您快速阅读所有文章。

      我不确定您使用的是哪种第三方 webflow,但也许这可以帮助您: Zapier

      【讨论】:

        【解决方案3】:
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-01-10
        • 1970-01-01
        • 2018-11-30
        • 1970-01-01
        相关资源
        最近更新 更多