我正在创建一个基本的登录系统,因为服务器端使用 NodeJS,但客户端没有。我必须在服务器端进行任何使用 NPM 包的调用。问题是我不知道如何从客户端 JavaScript 调用服务器端 NodeJS 函数。基本上我不能从客户端浏览器调用存储在服务器上的函数。
问问题
5717 次
4 回答
3
在你的 nodejs 应用程序中创建一个路由,如下所示:
app.get('/users', function(req, res) {
// Your function to be called goes here.
});
现在您可以使用 ajax 从客户端 javascript 调用此代码。像这样:
$.ajax({
type: 'GET'
url: 'http://localhost:8000/users',
success: function(response) {
console.log(response);
},
error: function(xhr, status, err) {
console.log(xhr.responseText);
}
});
于 2018-12-22T16:20:35.703 回答
0
创建一个 REST API 并将请求参数映射到您需要使用的特定函数调用。请参阅有关创建 REST API 的 本教程。
于 2018-12-22T16:20:08.483 回答
0
您可以通过调用服务器上的 API(用于某些特定工作的特定 URL)来执行此操作。在 JS 中,您需要 ajax。看看这里
//url be the api like '/api/something/'
$("button").click(function(){
$.ajax({url: "demo_test.txt", success: function(result){
// your response
}});
});
在 Node 中,我们有axios会做同样的例子
axios.post('api/tobackend/function',{user:'a',password:'b'})
.then((res)=>console.log('response from server'))
在 backed 中,您可能需要路由来处理请求。
router.post('api/tobackend/function',(reqs,resp)=>{console.log('backend')})
于 2018-12-22T16:21:34.900 回答
0
使用 Socket.io
在 JS 中
let xhr = new XMLHttpRequest(); xhr.open('GET', '/user/sessionDestroy'); xhr.send();
在 Node.JS 中
于 2020-09-05T06:13:17.610 回答