javascript - 为什么正确读取请求时服务器响应不正确?
问题描述
我在 Node.js repl 上,我创建了一个新的项目文件夹并初始化了 NPM,然后我安装了 Express 包并将以下代码写入 js 文件:
const express = require('express');
const app = express();
app.listen(5000, function(){
console.log("server started on port 5000");
})
app.get("/", function(req, res){
res.send("Hi There! Welcome!")
})
app.get("/speak/:animalName", function(req,res){
var animalName = req.params.animalName;
var verso = "verso";
if (animalName = "pig"){
verso = "oink"
} else if (animalName = "dog"){
verso = "bau"
} else if (animalName = "cat"){
verso = "Miao"
}
console.log(req.params);
res.send("THE " + animalName + " says " + verso);
})
app.get("*", function (req, res){
res.send("Sorry, the page cannot be found")
})
当我使用 Nodemon 打开 js 文件时,服务器会正确启动,并且当我在 URL 字段中键入特定模式时,console.log 会正确返回 req.params(在下面的示例中:对于我键入“cat”,控制台返回了{ animalName: 'cat' }
尽管如此,浏览器中的响应不正确:
解决方案
你=
在你的条件下使用一个单一的。这总是分配变量,而不是测试相等性。使用==
或===
。
推荐阅读
- python - 在matplotlib中绘制日期时间轴上的矩形?
- c# - 为什么我的自适应触发器不起作用
- java - 转换错误。parseInt 似乎没有转换我的文本值
- python - 我应该如何为 Django Channels 2.0 配置 Redis?
- php - 匹配 SQL Id 并获取并应用匹配值
- silverstripe - Silverstripe 不使用 HomePage.ss 作为 Chrome?
- javascript - 我的 AngularJS 应用程序中的“ng-repeat”有什么问题?
- php - 空或非空允许使用 php 插入
- watson-conversation - 问槽后如何在IBM沃森助手中捕获一个实体的多个值?
- java - 使用泛型:用泛型中的父值和子值实例化泛型类的对象