今天在写node服务器代码的时候,发现在浏览器中输入网址之后会显Not Found,没有任何其他内容,而且代码也没有报错,我在输出代码ctx.response.body之前也打印了相关信息,发现数据是成功的组织出来了,并且执行了这句话。
这个时候考虑下原因,可能就是在输出这句话之前这个处理函数已经执行完成了,虽然我是在回调函数中执行的返回函数,但是他还是继续往下执行了。
这里我上面用的是async所以我用await的形式,所以我把代码改写成了以下这种形式:
不出所料,代码可以正常返回信息了。
总结:导致这一现象的原因为:执行ctx.response.body之前已经返回了默认信息Not Found,虽说没有报错,但在获取到正确信息之前也无法达到自己的目的了。