Auth0-lock-Error:获取Lock的客户端数据时发生错误:https:// cdn

时间:2018-05-09 17:26:22

标签: node.js auth0-lock

我使用Auth0-lock创建身份验证对话框。我想在NodeJS文件中创建一个auth-lock对象。当我使用时:

const {Auth0Lock} = require('auth0-lock');

var lock = new Auth0Lock(  MyClientId,  MyDomain); 
lock.show();

在我的NodeJS文件中,我收到以下错误:

C:\Users\....\node_modules\auth0-lock\lib\utils\url_utils.js:6
var parser = global.document.createElement('a');
                           ^
TypeError: Cannot read property 'createElement' of undefined

我为它定义了一个虚拟dom元素,使用jsdom如下:

const jsdom = require("jsdom");
const { JSDOM } = jsdom;
const dom = new JSDOM('<!DOCTYPE html><html><body.....</body></html>');  

global.window = dom.window;  
global.document = dom.window.document;
global.location = dom.window.document.location;    

通过这个,上面的错误得到了解决,但是我没有向我显示auth0-lock身份验证对话框时出现了另一个错误。它是:

Error: An error occurred when fetching client data for Lock: https://cdn.auth0.com/client/[MyClientId].js

搜索显示此错误表示Lock无法连接到Auth0 CDN以获取客户端。但是当我使用auth0 cdn链接并使用脚本在html文件中创建auth-lock对话框时如下:

<script src="https://cdn.auth0.com/js/lock/10.23.1/lock.min.js"></script>
<script>
    var lock = new Auth0Lock( MyClientId, MyDomain); 
    lock.show();
</script>

它使用完全相同的&#34; MyClientId&#34;并向我展示了对话框。

您是否愿意帮助我解决此问题并在我的NodeJS文件中显示对话框?

由于

0 个答案:

没有答案