小编n00*_*00b的帖子

Ionic2中的Auth0给出了Uncaught在回调中找不到中继帧

我试图让Auth0在浏览器中使用

离子运行浏览器

我遵循了Auth0的指南.我在用

auth0-7.6.1.min.js

锁定/ 10.10.2/lock.min.js

版本.导航到谷歌登录页面,但回调失败,空白屏幕.通过回电我的意思是加载

https://n00b.au.auth0.com/login/callback?state=blahblahblah ...

网址.它使用引发exeption的JavaScript加载白色html

没有找不到中继帧

在这些代码行中

     onOpen: function(cb) {
        var o = "*";
        var msgTarget = isIE ? findRelay() : window.opener;
        if (!msgTarget) throw "can't find relay frame";
Run Code Online (Sandbox Code Playgroud)

显然,一个全局的window.opener属性预计会存在.知道整个URL由Auth0提供,我无法找到解决问题的方法.

我已经检查过Auth0中的日志,从他们的角度来看它都是绿色的并显示成功登录.

任何想法为什么会失败?

更新:在iPhone和iOS模拟器上测试,两者都只显示空白屏幕.下载了示例Auth0项目,没有任何修改就有这个问题.我的猜测是它与Cordova的InApp Browser插件有关,在一个新的safari窗口中打开登录页面

auth0 ionic2 angular

15
推荐指数
1
解决办法
300
查看次数

当我将它传递给 IDisposable 类时是否需要处理流?

我写了一段代码。我想确保我以正确的方式处理对象。

我有一个像这样的一次性类,用于从非托管资源读取一些数据。

class MyFileReader : IDisposable
{
    private readonly FileStream _stream;

    public MyFileReader(FileStream stream)
    {
        _stream = stream;
    }

    public void Dispose()
    {
        _stream.Dispose();
    }
}
Run Code Online (Sandbox Code Playgroud)

目前在我的程序中,我像这样处理对象。

        using (FileStream stream = new FileStream(filename, FileMode.Open, FileAccess.Read, FileShare.Read))
        {
            using (MyFileReader reader = new MyFileReader(stream))
            {
                //...
            }
        }
Run Code Online (Sandbox Code Playgroud)

这对我来说似乎没问题。后来我注意到类是通过引用传递的,所以也许如果我处理其中一个,就不需要处理另一个。

我的问题是我可以做这样的事情吗?

        using (FileStream stream = new FileStream(filename, FileMode.Open, FileAccess.Read, FileShare.Read))
        {
            MyFileReader reader = new MyFileReader(stream);
            // Remove IDisposable from MyFileReader and stream will close after using.
        }
Run Code Online (Sandbox Code Playgroud)

还是这个?

        FileStream stream = …
Run Code Online (Sandbox Code Playgroud)

c# idisposable using

5
推荐指数
1
解决办法
1318
查看次数

标签 统计

angular ×1

auth0 ×1

c# ×1

idisposable ×1

ionic2 ×1

using ×1