2017-04-25 9 views
3

今週、Angularでサーバーサイドレンダリングを掘り下げました。それは完全に同形であるように設計されているようですので、サーバやクライアントでデータを取得している場合は、実行するのと同じコード行です。したがって、this.http.get('http://www.example.com/myurl');のようなコールを行います。ここで、this.httpHttpのインスタンスで、@angular/httpです。あなたのサーバーがXHRを自分自身に対して行う場合はどうなりますか?

クライアント側では、これは非常にクリアです。これは、ブラウザがサーバーにXHR要求を出すことを意味します。

サーバー側で...実際に何が起こっているのですか?ドメインサーバーを完全に認識していないノードサーバーは、DNSルックアップなどを使用して通常のhttp要求を行い、それ自体を見つけることができると思いますか?

これは正確ですか?

+0

質問が分かりません。クライアントはサーバーに対してHTTP要求を行います。サーバーは要求をインターセプトし、それに応じて応答を送信します。 – Booster2ooo

+0

私はあなたが応答としてページHTMLを得ると思う – Tushar

+2

あなたの前提は正しいです。ノードサーバーは '$ {req.protocol}:// $ {req.headers.host}/your/relative/route'に新しいHTTPリクエストを作成するだけで、リクエストが終了することを知らない自体。 – idbehold

答えて

0

すべてのコメントは、あなたのサーバーが戻って来て自分自身をヒットするDNSコールに手を差し伸べるという質問の答えを指しています。

私はパフォーマンスについて知ることに興味があったので、私はこのようなテストを行った:time curl -v http://[mydomain].us-east-1.elb.amazonaws.com/testedself

エンドポイントは、res.send('Hello World');の明示的なエンドポイントです。この特別なテストでは余分な時間は〜10MSです。

関連する問題