爬虫類、モジュラーフロントエンド、3種類のNode.js

1.http爬虫類は、HTTP Webサーバーは、フォアグラウンドを描画するためにデータを送信するために、中国の文字化け
HTTPモジュールデータ要求:要求ポストを得る
ケースを:バックエンドの爬虫類
プロセス:バックエンドのデータ要求- 「データ解析- 」データクレンジング- 「データの受信を送信します

2.http Webサーバは、レンダリングデータ受信送信
HTTPモジュールの導入1.
あなたはHTTPモジュール本体createServerこのAPIを経由してWebサーバを作成することができます。2.
3.ドメイン名とサーバーのポートを作成します

サーバー:
サーバーのウェブサイト(サイト)上で実行することができます
入力します。

  1. Webサーバ(静的サーバー)は、ブラウザサーバで実行することができます
  2. APIサーバー(バックエンドインターフェイス)データ要求のフロントエンドのために、データインターフェース言語の後端を暴露は(アヤックスFETCH)
    ネイティブのWebサーバに作成Node.jsの
    HTTPモジュール
    createServer(コールバック)は、サーバを作成するには
    三つのパラメータ応答要求をコールバックを受け取る
    (聞きますポート、ホスト、コールバック)は、サーバ(サーバ・ステータス・フィードバック)を監視
    ポートポートの
    ホストドメイン名を

3.中国の歪みが
中国語歪みのNode.js
1セットリクエストヘッダ
response.writeHead(200 {である
;://小文字月UTF8「のcharset = UTF8テキスト/ HTML」「タイプのコンテンツ」
})
2.メタを送りますタグ
のResponse.Write( '')

3. toString() 在当前应用场景中还不行
二进制有效
将二进制 --- 》 string

名詞:チャンクはスライス

英語が呼び出され、「サーバー側のレンダリング」:「バックエンドのレンダリングを」としても知られている:私たちは、データをレンダリングする、このフォームは、私たちが呼ぶ前にHTMLを送ってきた「SSR」

  1. モジュラーフロントエンド

    質問:なぜあなたは、フロントエンドのモジュラーを使用しますか?

    モジュラー:特定の機能を有するもの(広義)

定義されたプロセスモジュール:

1.定義モジュール(オブジェクト)

2.エクスポートモジュール

3.基準モジュール

利点:

  1. あなたは、個々の複数の機能ブロックを格納することができます。

    		2. 复用性高
    
    1. AMD(require.js)
    2. CMD(sea.js)
    3. Common.js
  2. モジュールのAMDの定義

    定義

    // AMD
    /*
    	目录
    		admDir
    			a.js
    			index.js
    */
    // AMD定义  a.js
        define ({
            a: 1,
            b: 2,
            add: function(){}
        })
    // AMD引用 index.js
    	require([./a.js],function( moduleA ){
            //moduleA指的就是定义来的对象
    	})
    
  3. CMD定義モジュール

    定義

    //CMD
    /*
    	目录结构
    		b.js
    		index.js
    */
    
    // 模块定义  b.js
    	define(function(require, exports, module) {
    
        	// 模块代码
    
        });
    //模块引用 index.js
    	require('./b.js',function( moduleB ){
            //moduleB就是b模块中导出的内容
    	})
    

    一面の質問:CMD AMDの

  4. Common.js

    Node.jsのは(なり)Common.js仕様を使用しています

    当てにならないの理解:

    ノードが×に属しcommon.js

    ノードはcommon.js×所属します

    //common.js
    /*
    	目录结构:
    		name.js
    		index.js
    */
    //模块的定义 name.js
    	const nameObj = {
            name: 'Gabriel Yan '
    	}
    //模块的导出  name.js
    	module.exports = nameObj
    //模块的引用
    	const nameObj = require('./name.js')
    

使用中のNode.js Common.js仕様は、3つのタイプがあります。

  1. 内蔵モジュール(取り付けられた内蔵モジュールAPIのNode.jsグローバルオブジェクト本体を指します)

  2. カスタムモジュール

    1. モジュール定義

      //举例
      const student = {
          id: 1,
          name: 'Gabriel Yan'
      }
      const fn = function(){}
      
    2. エクスポートモジュール

      // 第一种导出
      module.exports = student // 安全性不高  默认导出一个
      //第二种导出
      module.exports = { //批量导出,按需引用
          student,fn
      }
      
    3. リファレンスモジュール

      // 这种引用对应第一种导出
      const student = require('./xxx.js')
      // 这种引用对应第二种导出
      const { student , fn } = require( './xxx.js ' )
      

      注意:

      書き込みパスを必要とする場合、カスタムモジュールの参照でなければなりません

  3. サードパーティ製のモジュール

    1. 别人已经封装好的模块
    2. 这个模块具备一些特定的功能
    3. 这些模块存放在  www.npmjs.com 这个网站中
    这些模块的文档也记录在内
    
    格式: var/let/const 变量名 = require( 模块名称 )
    
      总结: 
          第一步,使用npm/cnpm 安装  例: npm i request -D
          第二部,在文件中引入
          第三部,在www.npmjs.com这个网站中找到这个模块的文档,根据文档来使用
    

思考:私たちは、サードパーティのモジュールに、独自のカスタムモジュールをパッケージ化することができませんか?

分析:

サードパーティのモジュールは特徴があります。

  1. 特定の機能があります
    。2.店舗で:http://www.npmjs.com

ソリューション:アップロードカスタムモジュール(http://www.npmjs.com

  1. ファイルpackage.jsonを作成します。

    $ npm init -y
    
    
  2. このサイトhttp://www.npmjs.comのアカウントを登録します

    注:最初の着陸着陸メールを活性化させる、その後、(これを手動で送信されます)あなたのメールボックスにメッセージを送信します

  3. ソースコンピュータがソースNPMではありません確認してください

    $ nrm ls
    
    

    もしそうなら、それは気にしないだろう

    そうでない場合には、ソースNPMに切り替え

  4. コマンドラインでのログインnpmjs倉庫

    $ npm adduser
    
    
  5. モジュールおよびエクスポートモジュールを作成します。

  6. あなたの名前は使用パッケージにすでにあるかどうかを確認

  7. リリースパッケージ

    $ npm publish
    
    

ポイントメッセージ:

  1. Eメールが活性化されていない(アップ)
  2. いいえハンドオーバ元のNPMありません
  3. NPMコンピュータ全体を使用することはできません

上記の方法では解決しない場合:

あなたはそれを試して誰か他の人のアカウントを使用します

-D === --save-devの

//举例

cnpm  i  jquery -D  === cnpm i jquery --save-dev  // 开发环境下使用
cnpm i jquery -S ===  cnpm i jquery --save // 生产环境下使用

クロスドメインのNode.js

クロスドメイン;

フロントクロスドメイン

JSONP

プロキシ(この要求データを作る私たちを助けるために、バックエンドサーバーを仮想バックエンドサーバーを作成する)リバース

バックエンドのクロスドメイン

ノードPHPのJava

  1. 設定要求ヘッダ

  2. サードパーティ製のミドルウェアを使用した(CORS)

    ミドルウェア:特定の関数の関数であります

おすすめ

転載: blog.csdn.net/weixin_45213847/article/details/93302724