node.js - 如何在 NodeJS 中的 URL 中传递变量
问题描述
我正在使用 api 发送短信我想在 URL 中传递电话号码和消息等变量。
问题:当我动态发送变量时,它没有检索变量的值。
下面是我的代码:
router.post('/testSms',(req,res) => {
const phone = req.body.phone;
const msg = req.body.message;
request({
url:'http://www.techsolver.in/http-api.php?username=abc&password=pwd&senderid=MYID&route=1&number=phone&message=msg',
method:'GET'
},function(err,response){
if(err){
console.log("Error",err);
}
else{
console.log(response);
}
});
});
module.exports = router;
这里它不检索值。有人请让我知道如何解决这个问题。
谢谢
解决方案
您没有引用变量,而是将它们的名称用作 URL 中的字符串。
您必须将它们作为查询参数附加到 URL 字符串中,如下所示:
'http://www.techsolver.in/http-api.php?username=abc&password=pwd&senderid=MYID&route=1&number=' + phone + '&message=' + msg
您可以看到phone
andmsg
作为变量附加在字符串中,而不是仅仅写入字符串中,完整的代码将是:
router.post('/testSms',(req,res) => {
const phone = req.body.phone;
const msg = req.body.message;
request({
url:'http://www.techsolver.in/http-api.php?username=abc&password=pwd&senderid=MYID&route=1&number=' + phone + '&message=' + msg,
method:'GET'
},function(err,response){
if(err){
console.log("Error",err);
}
else{
console.log(response);
}
});
});
module.exports = router;
或者,您可以查看涉及模板文字的 Anuj Pancholi 的答案,以及 nodejs 的 querystring 模块的使用。
推荐阅读
- java - 是否可以在 Android 来电时自动发送短信?
- python - 为文本数据抓取网站 html 时出现 lxml 错误。尝试了几次迭代
- javascript - 通过单击javascript减慢滚动页面
- c# - WPF:在后面的代码中访问转换后的 Canvas 坐标
- rabbitmq - RabbitMQ 管理插件中的配置条目
- php - fsockopen 总是 操作超时
- excel - 如何使用 Power Query 在一行中删除重复项?
- excel - 如何将多个 Excel 工作表迁移到一个主工作簿
- python - 在 tablewidget Qt5 Python 中显示 CSV 文件
- r - 如何将字符串转换为R中的嵌套列表?