javascript - 尝试使用 jquery 将 id 传递给 nodejs
问题描述
我正在尝试在我的应用上设置好友请求。因为我知道通过 req.user 登录的用户是谁(请求的朋友),所以我需要知道登录的用户正在查看谁的个人资料(接收的朋友)。由于我使用 pug 作为模板引擎,我找不到将接收朋友的 id 作为 html id 传递的方法,因此我将其保存为 title 属性:
button.btn.btn-primary.btn-block#addFriendBTN(title = `${user.id}`) Add friend
我的jQuery是这个。当我控制日志friendId
时,它确实捕获了正确的 id,并且我检查了它的类型为字符串以确保。
$('#addFriendBTN').on('click', function() {
var friendId = $(this).attr('title');
$.ajax({
method: 'POST',
url: '/users/' + friendId,
data: {
recevingId: friendId
},
success: function() {
$('#addFriendBTN').hide();
},
error: function(err) {
console.log("err is " + err);
}
});
});
在我的用户文件中的服务器端 js 中,我有这个发布路线:
router.post('/:id', isLoggedIn, function(req, res) {
var receivingId = req.body;
console.log("User Id is " + receivingId);
});
但是控制台日志(在浏览器中)给了我一个错误,所以它甚至没有得到服务器端的 js。
我收到的错误是 500 内部服务器错误,然后 err 是 [object object]。关于为什么这不起作用的任何想法?
解决方案
你得到身体对象,试试这个:
var receivingId = req.body.recevingId;
推荐阅读
- android - Room Entity 的数据存储正确,但检索为 null
- python - 当一个条目被强制转换时,条目对象是否会在列表中永久更改
- react-native - 如何在没有应用商店的情况下检查我的应用程序的新版本?
- android - 无法记录呼入和呼出电话语音,并且应用程序关闭时在后台被杀死
- java - 如何在 Webdriver Container 中升级 chrome 版本
- typo3 - 从 TYPO3 API 中的 fileObject 获取文件标识符
- vue.js - 子路由中的Vue路由器动态ID和名称
- pdf - 创建 PDF,其中每一页都是图像和 SVG 文件的合并
- html - Django“ljust”内置模板标签不起作用
- java - 安卓蓝牙通讯问题