Javascript 无法读取属性';名称';路由参数中未定义的
紧随其后 我有以下建议(): 但是如果我转到Javascript 无法读取属性';名称';路由参数中未定义的,javascript,node.js,express,routes,Javascript,Node.js,Express,Routes,紧随其后 我有以下建议(): 但是如果我转到http://localhost:3000/name/错误:无法获取/name/ 如果我转到http://localhost:3000/name/Leon 错误: TypeError: Cannot read property 'name' of undefined at /Users/leongaban/Projects/Node/expressApp/server3.js:5:39 at Layer.handle [as handle_
http://localhost:3000/name/
错误:无法获取/name/
如果我转到http://localhost:3000/name/Leon
错误:
TypeError: Cannot read property 'name' of undefined
at /Users/leongaban/Projects/Node/expressApp/server3.js:5:39
at Layer.handle [as handle_request] (/Users/leongaban/Projects/Node/expressApp/node_modules/express/lib/router/layer.js:82:5)
at next (/Users/leongaban/Projects/Node/expressApp/node_modules/express/lib/router/route.js:100:13)
at Route.dispatch (/Users/leongaban/Projects/Node/expressApp/node_modules/express/lib/router/route.js:81:3)
at Layer.handle [as handle_request] (/Users/leongaban/Projects/Node/expressApp/node_modules/express/lib/router/layer.js:82:5)
at /Users/leongaban/Projects/Node/expressApp/node_modules/express/lib/router/index.js:235:24
at param (/Users/leongaban/Projects/Node/expressApp/node_modules/express/lib/router/index.js:332:14)
at param (/Users/leongaban/Projects/Node/expressApp/node_modules/express/lib/router/index.js:348:14)
at Function.proto.process_params (/Users/leongaban/Projects/Node/expressApp/node_modules/express/lib/router/index.js:392:3)
at /Users/leongaban/Projects/Node/expressApp/node_modules/express/lib/router/index.js:229:12
不确定我遗漏了什么?参数
在req
上。使用req.params.name
关于无法获取/name/,如果在路由中指定一个参数,将url的该部分留空将与路由不匹配。您必须填充url的:name
部分才能点击路由。请求对象包含参数而不是响应。考虑一下您向服务器发出的包含请求参数的请求?所以请求对象持有它们
您需要req.params.name
如果您使用的是body parser
您将在req.query.name
中获得它body parser
不解析url参数,只解析请求的主体。解析后的正文显示在req.body
中<代码>请求查询
包含查询字符串中的键值对,位于?
TypeError: Cannot read property 'name' of undefined
at /Users/leongaban/Projects/Node/expressApp/server3.js:5:39
at Layer.handle [as handle_request] (/Users/leongaban/Projects/Node/expressApp/node_modules/express/lib/router/layer.js:82:5)
at next (/Users/leongaban/Projects/Node/expressApp/node_modules/express/lib/router/route.js:100:13)
at Route.dispatch (/Users/leongaban/Projects/Node/expressApp/node_modules/express/lib/router/route.js:81:3)
at Layer.handle [as handle_request] (/Users/leongaban/Projects/Node/expressApp/node_modules/express/lib/router/layer.js:82:5)
at /Users/leongaban/Projects/Node/expressApp/node_modules/express/lib/router/index.js:235:24
at param (/Users/leongaban/Projects/Node/expressApp/node_modules/express/lib/router/index.js:332:14)
at param (/Users/leongaban/Projects/Node/expressApp/node_modules/express/lib/router/index.js:348:14)
at Function.proto.process_params (/Users/leongaban/Projects/Node/expressApp/node_modules/express/lib/router/index.js:392:3)
at /Users/leongaban/Projects/Node/expressApp/node_modules/express/lib/router/index.js:229:12