从客户端获取值到服务器端(node.js + express.js)
我仍然试图理解node.js的概念,所以如果这是一个愚蠢的问题,请不要责怪我。
在node.js中, 是否有可能从index.jade获得一个值到index.js ?
例如:
index.jade
a(href="/bla" name="someName") Blabla
index.js
router.get('/bla', function(req, res){ //get value of name ("someName") or string ("Blabla") console.log(req.body.name) ?? });
如果这是不可能的,我想知道为什么…
谢谢。
不,这是不可能的,原因很简单,HTML中的name
属性不会传递给服务器( 任何服务器,不一定是基于节点的服务器)。
如果您想在GET
请求中传递值,通常会将其作为URL的一部分传递给它:
a(href="/bla?name=someName") Blabla
这将生成以下HTML:
<a href="/bla?name=someName">Blabla</a>
在您的服务器代码中,您可以使用req.query.name
访问该值。
更进一步:如果你的模板有一个名为“name”的variables,你可以使用类似的东西,但是更加dynamic:
a(href="/bla?name=" + encodeURIComponent(name)) Blabla
encodeURIComponent
确保任何“特殊”字符(在URL中可能有特殊含义)将被正确编码。
- 如何与僵尸asynchronousJavaScripttesting工作?
- Nodejs Express Passport – req.isAuthenticated()和req.user之间的区别
- Node.js TypeError:无法读取未定义的属性“path”
- 无法$ push和$使用express js在mongodb中一次设置数据
- Express无法读取PUT请求中req.data的属性值
- 快速路由共享variables
- 如何使用Express,Javascript和Handlebars在POST请求中显示URL数据?
- Node.js上的Express.js是否有内存泄漏?
- 快速app.get()创build新的虚拟目录 – 我不想这样做