2017-09-08 5 views
0

ember-electron을 사용하여 전자 응용 프로그램을 구축하려고 시도했으며 emberfire을 사용하여 Firebase와 통신하려고합니다.전자 응용 프로그램 내에서 firebase에 액세스 할 수 없습니다

XMLHttpRequest cannot load https://www.googleapis.com/identitytoolkit/v3/relyingparty/signupNewUser?key=AIzaSyBYyuJ-1E3ufujlzdKhj8gE9I6QH8TreJE. Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'serve://dist' is therefore not allowed access. The response had HTTP status code 404. 

이 알려진 문제인가, 아니면 사람이 주위에 방법을 알고 않습니다 ember s와 웹 응용 프로그램으로 실행하지만, 전자 응용 프로그램으로 실행할 때이 같은 오류 아무것도 얻을 수 없을 때 모든 것이 잘 실행? 죄송 합니다만 Google은 유효한 도메인 이름으로 간주하지 않으므로 승인 된 도메인 목록에 serve://dist을 (를) 단순히 추가 할 수 없습니다.

업데이트 : 가능한 해결 방법이 있는지 알고 싶지만 내 용도로만 사용되는 Nativefier (https://github.com/jiahaog/nativefier)라는 도구를 발견했습니다. 웹 응용 프로그램과 데스크톱 응용 프로그램을 동시에 개발하고 있으므로 일단 웹 응용 프로그램을 호스팅하면 nativefier를 사용하여 데스크탑 응용 프로그램을 만들 수 있습니다.

답변

0

전자로는 시도하지 않았지만 node-webkit으로 게임했습니다. 원산지와 관련된 많은 문제는 로컬 웹 서버를 실행하여 해결할 수 있습니다. 메인 스크립트에서 앱을 제공하는 express를 사용하여 웹 서버를 실행하십시오. 이것은 내가 로컬 서버를 시작하는 데 사용할 코드의 조각 :

let express = require('express'); 
let http = require('http'); 
let app = express(); 
app.use('/', express.static('dist')); 
let server = http.createServer(app); 
let port = 9000; 
let maxPort = 50000; 
server.on('error', function (e) { 
    if (port < maxPort) { 
     server.listen(++port); 
    } else { 
     alert('Your system has no free ports to start a web-server, which is needed for this app to work'); 
     window.nw.Window.get().close(); 
    } 
}); 
server.on('listening', function() { 
    location = 'http://localhost:' + port + '/index.html'; 
}); 
server.listen(port); 

나는 비슷한도 전자에 대한

일을해야한다고 생각