欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

koa和node有哪些關(guān)系

這篇文章將為大家詳細(xì)講解有關(guān)koa和node有哪些關(guān)系,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

目前創(chuàng)新互聯(lián)公司已為上1000+的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、網(wǎng)站改版維護(hù)、企業(yè)網(wǎng)站設(shè)計(jì)、靖西網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

koa是一個(gè)基于Node.js平臺的web開發(fā)框架,依賴“node v7.6.0”或ES2015及更高版本和async方法支持;Koa并沒有捆綁任何中間件,而是提供了一套優(yōu)雅的方法,幫助用戶快速而愉快地編寫服務(wù)端應(yīng)用程序。

本教程操作環(huán)境:windows7系統(tǒng)、nodejs 12.19.0版,DELL G3電腦。

Koa -- 基于 Node.js 平臺的下一代 web 開發(fā)框架

Koa 是一個(gè)新的 web 框架,由 Express 幕后的原班人馬打造, 致力于成為 web 應(yīng)用和 API 開發(fā)領(lǐng)域中的一個(gè)更小、更富有表現(xiàn)力、更健壯的基石。 通過利用 async 函數(shù),Koa 幫你丟棄回調(diào)函數(shù),并有力地增強(qiáng)錯(cuò)誤處理。 Koa 并沒有捆綁任何中間件, 而是提供了一套優(yōu)雅的方法,幫助您快速而愉快地編寫服務(wù)端應(yīng)用程序。

Koa 是為了解決 Express 的一些設(shè)計(jì)缺陷而誕生的。它的中間件可以通過 async function 來編寫,await next() 可以中斷中間件的執(zhí)行,等到后面所有中間件執(zhí)行完之后再執(zhí)行,通過 await next() 來實(shí)現(xiàn)洋蔥模型。

還有一個(gè)特點(diǎn)是對 request 和 response 的簡化處理,這兩者都掛載在 ctx 上使用,返回的內(nèi)容也可以通過直接賦值來使用,如:ctx.response.body = fs.createStream('really_large.xml')。

而且 Koa 把路由功能砍掉了,它是通過中間件來實(shí)現(xiàn)的,這是一種微內(nèi)核的極簡思路。

核心功能(Koa 的說明文檔):

  • 比 Express 更極致的 request / response 簡化,如:

    • ctx.status = 200

    • ctx.body = 'hello node'

  • 使用 async function 實(shí)現(xiàn)的中間件。

  • 有“暫停執(zhí)行”的能力。

  • 在異步的情況下也符合洋蔥模型。

  • 精簡內(nèi)核,所有額外功能都移到中間件里實(shí)現(xiàn)。

安裝

Koa 依賴 node v7.6.0 或 ES2015及更高版本和 async 方法支持.

你可以使用自己喜歡的版本管理器快速安裝支持的 node 版本:

$ nvm install 7
$ npm i koa
$ node my-koa-app.js

使用 Babel 實(shí)現(xiàn) Async 方法

要在 node < 7.6 版本的 Koa 中使用 async 方法, 我們推薦使用 babel's require hook.

require('babel-register');
// 應(yīng)用的其余 require 需要被放到 hook 后面
const app = require('./app');

要解析和編譯 async 方法, 你至少應(yīng)該有 transform-async-to-generator 或 transform-async-to-module-method 插件.

例如, 在你的 .babelrc 文件中, 你應(yīng)該有:

{
  "plugins": ["transform-async-to-generator"]
}

你也可以用 env preset 的 target 參數(shù) "node": "current" 替代.

應(yīng)用程序

Koa 應(yīng)用程序是一個(gè)包含一組中間件函數(shù)的對象,它是按照類似堆棧的方式組織和執(zhí)行的。 Koa 類似于你可能遇到過的許多其他中間件系統(tǒng),例如 Ruby 的 Rack ,Connect 等,然而,一個(gè)關(guān)鍵的設(shè)計(jì)點(diǎn)是在其低級中間件層中提供高級“語法糖”。 這提高了互操作性,穩(wěn)健性,并使書寫中間件更加愉快。

這包括諸如內(nèi)容協(xié)商,緩存清理,代理支持和重定向等常見任務(wù)的方法。 盡管提供了相當(dāng)多的有用的方法 Koa 仍保持了一個(gè)很小的體積,因?yàn)闆]有捆綁中間件。

必修的 hello world 應(yīng)用:

const Koa = require('koa');
const app = new Koa();
app.use(async ctx => {
  ctx.body = 'Hello World';
});
app.listen(3000);

關(guān)于“koa和node有哪些關(guān)系”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯(cuò),請把它分享出去讓更多的人看到。

當(dāng)前文章:koa和node有哪些關(guān)系
URL地址:http://www.chinadenli.net/article12/pegddc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)公司網(wǎng)站排名手機(jī)網(wǎng)站建設(shè)網(wǎng)站設(shè)計(jì)商城網(wǎng)站網(wǎng)站策劃

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)