2017-04-11 9 views
1

私の電子アプリケーション内のローカルホスト上にRESTfulノードJS Httpサーバーを実行しています。私はOSが私にランダムなフリーポートを与えるように、ポート0でリッスンします。 XHTTPリクエストを実行する必要があるURLを知るために、角度コード内のgivinポートにアクセスするにはどうすればよいですか?角度ローカルノードのJS HTTPサーバーポート(電子で実行中)を角度サービスに渡す

private heroesUrl = 'http://localhost:1337/api/heroes'; 

getHeroes(): Promise<Hero[]> { 
    return this.http.get(this.heroesUrl).toPromise() 
     .then(
      ((response) => response.json() as Hero[]) 
      ) 
     .catch(this.handleError); 
} 
で127.0.0.1:0

var listener = app.listen(port, server, function() { 
     port = listener.address().port; 
     console.log('Listening on port ' + port + '@' + server); 
    }); 

XHTTPコール

私は私が得るポートで固定ポート1337を置き換えることができますどのように任意のアイデアで実行されている

restapiサーバ(nodejs)サーバー側でリスナーを開くとき?

または、私はちょうど両側に固定ポートを使用し、それが無料であることを願っていますか?私に間違って聞こえる。

また、電子/角度がhttp://localhost:4200(ng serve)で実行されているため、 '/ api/heroes'をURLとして使用することはできません。

答えて

1

私は通常、この種の設定で開発するときに固定ポートを使用します。ダイナミックポートを設定する心配がありません。また、Angularアプリの設定方法によっては、プロキシを設定する必要があります。たとえば、angle-cliを使用している場合は、要求された機能を実装する方法を次に示します。

https://github.com/angular/angular-cli/blob/d22e9ae73763923980fc1e59cfb2a0bf255b98d8/docs/documentation/stories/proxy.md

+0

私は静的ポートを使用する場合は、すべての作業罰金ですが、私は私が最適decissionのthatsないと思うので、本当にしたいいけません。私がプロキシのものを使用する場合、私は動的にプロキシjsonファイルを編集する必要があります、それは可能ですか? – capc0

+1

@ capc0なぜ動的ポートを使用する方が静的ポートより優れていると思いますか?それは私が以前に見たパターンではありません。私は、あるサーバからのポート出力をグレープするbashスクリプトを作成し、動的に作成されたプロキシjsonファイルで角度アプリケーションを起動することができると思います。しかし、私が何かが欠けていない限り、私はあなたが固定ポート以外のもの –

関連する問題