koa + typeorm (三)

问题来了,我数据库也连接成功了,那么我该如何跟koa结合起来呢,继续查资料吧。

安装 koa

npm install koa 安装koa.
src/index.ts 内容修改一下。

import {createConnection} from 'typeorm';
import ormConfig from '../ormconfig.js';
import {Photo} from "./entity/photo";
const Koa = require('koa');
const router = require('koa-router')();


createConnection(ormConfig).then(async connection => {
    const app = new Koa();
    router.get('/', async ctx => {
        ctx.body = 'Hello World';
    })
    app.use(router.routes());
    app.use(router.allowedMethods());
    app.listen(3000);
}).catch(err => {
    console.log(err)
})

妥了,数据库也连接了,koa也运行了~ 但但但总觉得这玩意不该这么玩啊。 虽然,说不出,但总感觉不是那么爽~~~~

学习一下 koa

cookie

  1. ctx.cookies.set('key', 'value', [options])
    设置cookie,并且可以对cookie做一些配置,至于配置可以写哪些东西,用到的时候再讲吧。
  2. ctx.cookies.get('key')
    获取cookie
    唯一需要注意的是cookie存储中文的时候会报错,解决办法是:
// 编码
let name = Buffer.from('小花', 'utf-8').toString('base64');
// 解码
let str = Buffer.from(name, 'base64').toString('utf-8');
// str = '小花'
  1. 了解一下session, 我选的是koa-session, 具体可查看官网, 很简单,就不多说了。 如果遇到问题,可以留言。

  2. 获取url参数,是以Query String Parameters形式传参的。

    image.png

得到的结果是:


image.png
image.png

总结: 无论什么方式的请求,只要是这种传参方式,都可以拿到。

需要注意的是: 当参数中含有中文时,需要使用decodeURIComponent去解码。

  1. 获取postbody形式的传参。
    npm install koa-bodyparser
    使用的话也很简单。
1. const bodyparser = require('koa-bodyparser') // 引入
2. app.use(bodyparser()) // 使用
image.png

完活~~

注意: ctx.request.body 可以解析 x-www-form-urlencoded 以及 json格式的传参方式。至于form-data的传参方式,后面用到的时候再讲。

现在我忽然想到一个问题,难道就这么久撸完了?这项目结构呢? 接下来,才是最精彩的。我忽然又开始偷懒了~ 有点怕麻烦,想省事写了。。。。 啪啪啪啪啪, 加油撸完啊。 还是督促一下自己,把自己的学习过程慢慢写吧,虽然过程很坎坷,但或许还能帮上其他的小伙伴呢~~~ 对吧?

你可能感兴趣的:(koa + typeorm (三))