req.param undefined因为Express / Sails中的OriginalUrl不接受Orientdb @rid

时间:2014-12-02 15:08:59

标签: express sails.js orientdb

我对这一切都很陌生,所以这可能只是我无法编码。我正在尝试使用href将请求传递给控制器​​。

href="/user/edit/<%= user.id %>"
href="/user/edit/#12:0"

其中用户标识来自Orientdb数据库。 @rid格式的一个例子是#12:0

当我将请求输出到控制台时,我可以看到我只是将“用户/编辑”作为OriginalUrl。它似乎不喜欢#和:符号。这是预期的行为还是有其他不妥之处?

2 个答案:

答案 0 :(得分:0)

我对node.js一无所知,但这可能是由#符号引起的,这是一个URL(fragment identifier)中的特殊符号。使用REST API不应使用哈希字符,请参阅documentation

答案 1 :(得分:0)

我无法完全解决问题但得到了一个我现在很满意的解决方法。它涉及到以下几点。

href="/user/edit/<%= user.id.substring(1) %>"

这只删除字符串中的第一个字符。然后,当我需要通过user.id

搜索内容时,我会添加哈希