这是我的简单形式:
<form id="loginformA" action="userlogin" method="post">
<div>
<label for="email">Email: </label>
<input type="text" id="email" name="email"></input>
</div>
<input type="submit" value="Submit"></input>
</form>
Run Code Online (Sandbox Code Playgroud)
这是我的Express.js /Node.js代码:
app.post('/userlogin', function(sReq, sRes){
var email = sReq.query.email.;
}
Run Code Online (Sandbox Code Playgroud)
我试过sReq.query.email或sReq.query['email']或sReq.params['email']等他们都没有工作.他们都回来了undefined.
当我改为Get电话时,它有效,所以..任何想法?
我同步时有没有办法从我的模型中排除某些属性?
例如,我保留有关某些视图状态的模型信息.假设我有一个选择器模块,这个模块只是selected在我的模型上切换属性.后来,当我调用.save()我的集合时,我想忽略它的值selected并将其从同步中排除到服务器.
这样做有干净的方法吗?
(如果您想了解更多细节,请告诉我)
如果我将任何"额外"属性发送回服务器,我正在爆炸的API.现在,我敢肯定,我已经有不存在的服务器端上我的客户端骨干模特属性打破一些规则MVC什么的,但是,我需要做的是发起建立的请求,但只有经过一定的我的模型中的属性我正在启动CREATE请求.
我可以轻松地在骨干中做到这一点:
Model.save({key: val}, {patch: true});
Run Code Online (Sandbox Code Playgroud)
然后修改Backbone sync methodMap默认修补程序路由到POST而不是PATCH,这让我知道我正在寻找什么,除了稍后我想在适当的时候实际上能够PATCH(而不是POST).我只需将它作为POST进行POST,就好像它只是用于创建操作的补丁(不适用于更新操作!).
所以,简而言之,我需要采取这样的方式:
new Backbone.Model({'foo': 'bar', 'baz': 'beh'});
Run Code Online (Sandbox Code Playgroud)
并告诉它将自己同步到服务器,但只发送'foo'而不发送'baz',但它必须将其作为POST发送(它不能是PATCH).
有任何想法吗?