- 一般的なHTTPステータスコードに、あなたは何を知っていますか?状態コードの意味を説明してください。
- 200は、要求が成功し、すべてが正常、成功のリターンデータであります
- 301は、永久的なリダイレクションは、他の場所で要求された文書を指し、新規文書のURIは、位置決めに応答してヘッダ情報を説明します。ブラウザが自動的に新しいURIに接続します。
- 302、一時的なリダイレクトは、ステータスコードは、ユーザ所望の(現在の)新たなURIにアクセスするために使用することができ、要求されたリソースは、新しいURIが割り当てられていることを示しています。
- 303、ステータスコードがGETメソッドを使用して、原因リソース要求に対応する別のURIの存在のためにリソースを示す取得要求を向けなければなりません
- 403は、Foribiddenサーバーがアクセス権を持っていない、この要求を理解しますが、タスクを実行することを拒否されます
- 404、要求されたリソースのページを見つけていないが、見つけることができない、何もありません
- 503は、原因メンテナンスやサーバに、応答できないサーバが過負荷になり、応答できません
2、どのような状況下でのクロスドメインの経験は、いくつかの方法でドメイン間で共通のフロントエンド処理について説明します。そして、パッケージJSONP原則
A:ブラウザのコアは、基本的な安全機能は、同一生成元ポリシーです。他の対話的ソースリソースからロードされたソーステキストまたはスクリプトを制限する、ブラウザがスクリプトを実行相同かどうかのチェックは、スクリプトは、である、唯一の相同実行される場合にドメイン間で異なるソース。
- 原理は同一生成元ポリシーの制約から、スクリプトタグを使用することで、動的にページスクリプトに挿入され、scriptタグのsrc属性には、バックエンドのAPIインタフェースのアドレスであり、コールバック関数名のフロントエンドを取得する方法を伝えます:JSONPを端部は、後端補正が要求に応答して返され、パラメータとしてデータ転送バックします。
- CORS :(クロスドメインリソース共有)が要求アクセススクリプト他のドメインに許可されている現在のドメイン機構のリソースです。
アクセス・コントロール - :でレスポンスヘッダ内のプロパティに参加する要求を受信した後、応答を決定するために、バックエンドの後、原産地:XMLHttpRequestのリクエストを送って使用する場合は、同一生成元ポリシーに違反した場合、ブラウザが自動的にリクエストヘッダを追加します許可 - 起源、値は、要求元アドレスを開始している、ブラウザは、アクセス制御 - 許可 - 起源とだけ成功した試合後の処理に、同じアドレスの現在の応答の値かどうかを判断するために応答を取得します。
IEの下で必要な最近のブラウザやモバイル端部支持CORS、8+
- クロスドメイン・サーバ、プロキシサーバのトランジット
フロントエンドは、ローカルサーバに要求を送信する代わりに、フロントエンドサーバのローカルサーバが再びローカルサーバが役割の通過点であり、サーバ間の通信のための要求を送信し、その後、応答データはフロントエンドに戻します。
最適化サイトのパフォーマンスにどうあるべきかから3、Webフロントエンド
(1)ネットワークのアップグレードをロードし、ページの容積を減少させます
合わせた静的リソース圧縮、(JS / CSS合成コード圧縮、図スプライト)
静的リソースのキャッシュ
より高速なリソースを使用してCDNの負荷
- ページのレンダリングの最適化
フロントCSSに、jsが戻さ
レイジーローディング
オペレーティングDOMを削減
- どのようなブラウザストレージ、およびその違いを説明します。
クッキー webStorage(localStorageをのsessionStorage )
サイズ、有効期限、HTTP要求としてか、
- GETとPOSTリクエストについての話
GETリクエストは手動でない限り、POSTはないでしょう、アクティブキャッシュブラウザです。
GETリクエストはURLのみをエンコードすることができ、およびPOSTは、複数のエンコーディングをサポートしています。
GETリクエストパラメータは、ブラウザの歴史の中で無傷である、とPOSTパラメータが保持されません。
URLパラメータで送信されたGETリクエストがPOSTせずに、長さが制限されています。
パラメータのデータ型は、GETはASCII文字のみを受け入れますが、何の制限POSTはありません。
直接URLに露出パラメータは、機密情報を送信するために使用することはできませんので、POSTよりも安全GET。
代わりにURL、POSTリクエストの体を介して渡されたパラメータをGET。
GETは、TCPパケットを生成し、POSTの2つのTCPパケットを生成します。(GETリクエストは、ブラウザは、HTTPヘッダとデータ、一緒にサーバ応答200(リターンデータ)を送信します。POSTのために、ブラウザがサーバ応答100を続ける、最初のヘッダを送信し、ブラウザは、サーバ、データを送信します応答200 OK(リターン・データ))
図6は、 プロセスは、何が起こったのか、両方の入力からページのページURLをロードし終えましたか?
ロード・プロセス:
ブラウザは、DNSサーバに応じて、ドメイン名のIPアドレスに解決します
IPマシンにHTTPリクエストを送信します
サーバーは、プロセスを受信して、HTTPを返します。
リターンの内容を取得するために、ブラウザのリクエスト
レンダリング処理:
生成されたHTML DOMツリー構造
CSS生成CSSOMによると、
DOMとCSSOM統合フォームRenderTree
RenderTree開始レンダリングと表示をよります
レンダリングの遭遇の<script>、実行をブロック
7、あなたがデエンファシス方式(3以上)の配列を知って実現
8 、4とのTCP 3ウェイハンドシェイクを振って?
;(SYNパケットを送信し、最初に握手をした後、SYN-SEND状態に入る)数は、私はXが、私はあなたが接続を要求したい:AはBが言いました
AのBは、公聴会の後に言った:私の数をyである、あなたの次の1を楽しみにして、その後、X + 1は、(受信した番号が、その後、そのACK = X + 1のxであることを意味します)の数で、接続を確立することで合意しました。(第二のハンドシェイク、ACK、SYNパケットが送信され、その後、SYN-RCVD状態に入ります)
言うが、Bへの接続を設定することに同意した聴覚Bは言った:あなたは私と一緒に同意し、接続(ACK = Y + 1、ACK = 1、SEQ = X + 1)を確認してください。(第3のハンドシェーク、Aは、確立された状態になりました)
聴覚の確認後Bは、また、確立された状態となります。
四波が記載されています。
このセッションを終了するには1.A B、Aとの会話の後、Bに言った:私は(SEQ = U、FIN = 1)の接続をクローズします。(第一波は、Aは、FIN-WAIT-1に入ります)
必ず接続をクローズしたい行います2.Bは、メッセージAを受信した後に語りました。(SEQ = V、ACK = U + 1、ACK = 1)(第2波、CLOSE-WAITにB)
Bは彼に言いたいことがあるかもしれないので、などいくつかの時間のためにBの確認を受けた後3.A。(場合は、FIN-WAIT-2を入力します)
彼は4.Bが言う(ただし、おそらく言って)に仕上げた後、Aのために、私は接続を閉じたいです。(SEQ = W、ACK = U + 1、FIN = 1、ACK = 1)( 第三の波)
5.A B前記接続に完了メッセージを受信した後:接続は、メッセージを受信したオフ。(SEQ = U + 1、ACK = 1 + W、ACK = 1)( 第4波目、及びその後A CLOSEDに入る)6.B A確認が遅れて受信される、に
- TCPとUDPの違い
TCP伝送制御プロトコル
UDPユーザーデータグラムプロトコル
図1に示すように、TCPコネクション指向型(例えば、ダイヤルアップ接続が最初の呼を確立した); UDPはコネクションレスであり、すなわち、データを送信する前に接続を確立せずに
2、TCPは信頼性の高いサービスを提供しています。言い換えれば、TCPのデータ転送接続は、エラーのない、失われていない、繰り返さない、と順不同で到着し、信頼性の高い配信を保証するものではありませんUDP最善の努力を、
。3、TCPのバイトストリームと、実際には、TCPのバイトストリームデータ、非構造化のシリーズとして、UDPパケットのさ
UDPなし輻輳制御、およびネットワークの輻輳元ホストが(など、IPテレフォニー、リアルタイムのビデオ会議、などのリアルタイムアプリケーションに便利)、伝送速度減少させることにある原因のでしません
4を、各TCP接続が点のみを指すことができ、UDPのサポート一から一、多くの1つ、および多対多の双方向コミュニケーション
図5に示すように、オーバーヘッドの20バイトのTCPヘッダ、小さなUDPヘッダのオーバーヘッド、わずか8バイト
6、論理的な通信チャネルはTCP信頼性の高い全二重チャネルである、UDPは信頼できないチャネルであります
- HTTPとは何ですか
HTTPは、プロセス定義WEBサーバとWebブラウザとの間のデータ交換のためのアプリケーション層プロトコルTCP / IPプロトコルである速記ハイパーテキスト転送プロトコル(ハイパーテキスト転送プロトコル)、です。あなたが特定の通信フォーマットへのWebリソースWebサーバ、件名を取得したい場合、クライアントは、Webサーバに接続されている、HTTPプロトコルは、クライアントとWebサーバの通信フォーマットを定義するために使用されます。
- 真ん中の要素のレベルを達成する方法
13、HTTPおよびHTTPSの間の差
SSLプロトコルHTTPに基づいて追加の安全なデータ伝送、HTTPSに、SSLは、ブラウザとサーバ間のサーバと暗号化通信の身元を確認するために、証明書に依存しています。
HTTPハイパーテキスト転送プロトコルは、情報が平文で送信され、HTTPSは、セキュリティSSL転送プロトコルで暗号化されています。
HTTP接続は、非常に単純でステートレスであり、HTTPSプロトコルSSL + HTTP暗号化伝送プロトコル、ネットワーク認証プロトコル、セキュリティよりもHTTPプロトコルで構成されています。
1 4 どのような状況下では再配置と再描画をトリガーするどのような並び替え(還流)と再描画されます?。
ブラウザは、解析HTML DOMになります、CSSはDOMとCSSOM合併はツリーをレンダリングするために生じた、CSSOMに解析しました。RenderTreeで、我々はすべてのノードのスタイルを知っているし、ページ上でのサイズと位置を計算し、最終的にはページ上にノードを描きます。
戻り値:一部でレンダリングツリーの大きさや要素、構造のすべて、または特定のプロパティの変更、ブラウザは文書の一部または全部を再レンダリングプロセスが還流する言及。
最初のページのレンダリング
ブラウザのウィンドウサイズの変更
要素のサイズ変更や位置
要素の内容(テキスト番号や画像サイズ等)の変化
要素のフォントサイズを変更します
目に見えるDOM要素を追加または削除
ページは、(例:色、背景色、可視性、など)文書の流れの中でその位置には影響を与えないスタイル要素を変更すると、ブラウザは、再と呼ばれるプロセスを新しいスタイル要素に与えられ、それを再描画されます塗装。
操作の頻出パターンを避け、最高の一時間は、スタイル、または1時間変更のクラスをオーバーライド頻出操作DOMを避けるため、それは、文書の流出することを、絶対位置を使用して複雑なアニメーションを持つ要素は、それ以外の場合は、頻繁に親要素と後続の要素が発生します逆流。