1.请求(ctx.request)的信息

    1. {
    2. method: "GET",
    3. url: "/",
    4. header: {
    5. host: "localhost:3000",
    6. connection: "keep-alive",
    7. cache-control: "max-age=0",
    8. upgrade-insecure-requests: "1",
    9. user-agent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36",
    10. accept: "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",
    11. accept-encoding: "gzip, deflate, br",
    12. accept-language: "zh-CN,zh;q=0.9,en;q=0.8"
    13. }
    14. }

    2.请求路由信息(ctx.url)

    1. / //测试的时候返回的是一个斜杠,这里的url是端口号之后的信息.

    3.我在浏览器中输入:ziye
    ctx.request => ctx.url - 图1

    4.测试 ctx.request,结果如下

    1. {
    2. method: "GET",
    3. url: "/ziye", //可以发现这里加了:ziye
    4. header: {
    5. host: "localhost:3000",
    6. connection: "keep-alive",
    7. cache-control: "max-age=0",
    8. upgrade-insecure-requests: "1",
    9. user-agent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36",
    10. accept: "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",
    11. accept-encoding: "gzip, deflate, br",
    12. accept-language: "zh-CN,zh;q=0.9,en;q=0.8"
    13. }
    14. }

    5.比较ctx.url,在同样的请求下,结果如下

    1. /ziye

    6.知道ctx.request.url结果与ctx.url一致的,同时也知道了url指的是/之后的内容,因为/默认就存在.但这样在get请求中很难处理这个传参问题.当然koa2都处理好了,单纯的这样取请求过来的数据有些操作难度和不科学,现在来试试传入用户名和密码.

    假设 http://localhost:3000/inde.php?username=ziye&pwd=123456 (不一定准确)

    1. /inde.html?username=ziye&pwd=123456