koa params 关于koa定义接口中参数配置的小白入门

我们在前端开发中会使用到后端提供的接口,

例如这样的接口:

http://www.x.com/addUser?name=Arvo&age=24

那么在express或者koa中,我们想自己实现一个这样带参数的接口将如何实现,

看下面代码:

  var router = require('koa-router');
  var querystring = require('querystring');
  app.use(router(app));

  app.get('/addUser', function *(next) {
    if (!this.req._parsedUrl.query) {
      this.body = "参数错误";
      return;
    }
    var params = querystring.parse(this.req._parsedUrl.query);
    ...
  });
  

说明:

1. 浏览器访问(端口什么的自己弄把, 我这里启的3000)

localhost:3000/addUser?name=Arvo&age=24

2.这样根据我们的路由配置,就能够拿到参数

<pre name="code" class="javascript">app.get('/addUser', function *(next) {
    if (!this.req._parsedUrl.query) {
      this.body = "参数错误";
      return;
    }
    var params = querystring.parse(this.req._parsedUrl.query);
<span style="white-space:pre">	</span>console.log(params.name)  //Arvo
<span style="white-space:pre">	</span>console.log(params.age)<span style="white-space:pre">	</span>  //24<span style="white-space:pre">	</span>
  });

3.querystring模块是node自带的

4.req等参数还是自己console或者官网查查吧。

希望能帮到跟我一样的小白。

Github:github.com/ArvoGuo

时间: 2024-08-06 13:46:37

koa params 关于koa定义接口中参数配置的小白入门的相关文章

定义接口,参数声明,Url都通过Annotation指定

 经过上周对软件流程及代码的熟悉,这周就开始做一些工作了. 一开始我负责将软件中重复调用的一个方法抽取成API,本以为小菜一碟,结果抽取完老有问题.后来师兄指点后才发现,我的思想还是有些过程化. 经过一天时间,终于完成了提取的任务. 接下来让我深入学习Retrofit,并且实现功能.之前一点根本都没看过这个,只好现学,这个框架好像用的人不太多,网上资料少的很,找了许久才找到一点点资料: Retrofit的使用就是以下几步: 经过上周对软件流程及代码的熟悉,这周就开始做一些工作了. 一开始我负

JDK8 直接定义接口中静态方法

JDK8前,接口只能是抽象方法. 但是在JDK8中,静态方法是可以直接定义方法体,可以直接用接口名调用.实现类和实现是不可以调用的 一.直接调用接口的静态方法 二.实现接口的子类来调用接口的静态方法 可以定义非静态方法,在返回值前+default,然后其子类的实现类中进行调用,子类中也可以重写 三.如果同时实现两个接口,接口中定义了一样的默认方法,必须重写,不然会报错 原文地址:https://www.cnblogs.com/ggwow/p/8185040.html

Java中InvocationHandler接口中第一个参数proxy详解

java动态代理机制中有两个重要的类和接口InvocationHandler(接口)和Proxy(类),这一个类Proxy和接口InvocationHandler是我们实现动态代理的核心: 1.InvocationHandler接口是proxy代理实例的调用处理程序实现的一个接口,每一个proxy代理实例都有一个关联的调用处理程序:在代理实例调用方法时,方法调用被编码分派到调用处理程序的invoke方法. 看下官方文档对InvocationHandler接口的描述: {@code Invocat

java中接口中成员的定义

java中的接口的作用是提供编程框架,它作为统一的规范让其他类进行扩展,是java中非常优秀的设计. 这娃用以下代码总结了java中接口可以定义的成员以及它们默认被修饰的关键字: //外部接口的访问修饰符只能是public或默认修饰符 ,并且它的成员只能用public访问修饰符修饰, 接口不能用final修饰 public interface A { //成员变量,默认用public static final 修饰 String name="ahei"; //成员方法,默认用publi

编写高质量代码改善C#程序的157个建议——建议43:让接口中的泛型参数支持协变

建议43:让接口中的泛型参数支持协变 除了上一建议中提到的使用泛型参数兼容接口不可变性外,还有一种办法是为接口中的泛型声明加上out关键字来支持协变,如下所示: interface ISalary<out T> //使用out关键字 { void Pay(); } static void Main(string[] args) { ISalary<Programmer> s = new BaseSalaryCounter<Programmer>(); ISalary&l

在C++中定义接口类,在C#中实现

网上大部分都是C#调用C++的接口,很少有C++调用C#的,更少有在C++中定义接口类,在C#中实现. 千辛万苦,终于找到一个网址:http://www.tuicool.com/articles/AFjY7j 简单翻译一下, class __declspec(dllexport) CSimpleClass { public: int value; CSimpleClass(int value) : value(value) { } ~CSimpleClass() { printf("~CSimp

Java中抽象类和接口中均不能定义静态的抽象方法

1.Java抽象类中不能有静态的抽象方法. 抽象类是不能实例化的,即不能被分配内存:而static修饰的方法在类实例化之前就已经别分配了内存,这样一来矛盾就出现了:抽象类不能被分配内存,而static方法必须被分配内存.所以抽象类中不能有静态的抽象方法. 定义抽象方法的目的是重写此方法,但如果定义成静态方法就不能被重写. 2.接口中不能有静态的抽象方法 接口中的方法也只能是 public abstract修饰的,不能加上static.接口是不能实例化的,即不能被分配内存,而static修饰的方法

教你在Java接口中定义方法

基本上所有的Java教程都会告诉我们Java接口的方法都是public.abstract类型的,没有方法体的. 但是在JDK8里面,你是可以突破这个界限的哦. 假设我们现在有一个接口:TimeClient,其代码结构如下: import java.time.*; public interface TimeClient { void setTime(int hour, int minute, int second); void setDate(int day, int month, int yea

java 子接口中定义与父接口相同的方法

今天碰到一个很有意思的问题,在java中如果子接口中定义了与父接口中已经有的方法会发生什么事情呢?比如: interface IRunnable extends Runnable{ void run(); } 刚开始我还以为这样子的语法应该不能通过编译器,没有想到这样子做编译器并没有做出任何警告. 当然大多数情况下我们都不会这么做,因为这样做似乎没有什么意义.但为了真相,我还是做了个小实现: public class InterfaceDebug{ public static void main