req.param未定义,因为Express/Sails中的OriginalUrl不接受Orientdb@rid

req.param未定义,因为Express/Sails中的OriginalUrl不接受Orientdb@rid,express,sails.js,orientdb,Express,Sails.js,Orientdb,我对这一切都很陌生,所以这可能是因为我无法编写代码。我正在尝试使用href将请求传递给控制器 href="/user/edit/<%= user.id %>" href="/user/edit/#12:0" href=“/user/edit/” href=“/user/edit/#12:0” 其中用户id来自Orientdb数据库。@rid格式的一个示例是#12:0 当我将请求输出到控制台时,我可以看到我只获得了“user/edit”作为原始ALURL。它似乎不喜欢#和:符号。这

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

href="/user/edit/<%= user.id %>"
href="/user/edit/#12:0"
href=“/user/edit/”
href=“/user/edit/#12:0”
其中用户id来自Orientdb数据库。@rid格式的一个示例是#12:0


当我将请求输出到控制台时,我可以看到我只获得了“user/edit”作为原始ALURL。它似乎不喜欢#和:符号。这是预期的行为还是有其他问题?

我对node.js一无所知,但这可能是由
#
符号引起的,它是URL()中的一个特殊符号。使用RESTAPI时,您不应该使用散列字符,请参见

我无法完全解决这个问题,但找到了一个解决方法,我现在对此很满意。它涉及到做以下工作

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

这只是删除字符串中的第一个字符。然后,当我需要通过user.id搜索内容时,我会添加散列。谢谢你的建议。它不起作用,但它让我走上了解决问题的正确道路。谢谢。请参阅文档。使用REST API时,您不应使用哈希字符Yep问题不是到Orientdb的连接,而是sailsjs和nodejs的内部路由导致了问题。