2

我正在创建一个基本的登录系统,因为服务器端使用 NodeJS,但客户端没有。我必须在服务器端进行任何使用 NPM 包的调用。问题是我不知道如何从客户端 JavaScript 调用服务器端 NodeJS 函数。基本上我不能从客户端浏览器调用存储在服务器上的函数。

4

4 回答 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
  1. 使用 Socket.io

  2. 在 JS 中

    let xhr = new XMLHttpRequest(); xhr.open('GET', '/user/sessionDestroy'); xhr.send();

在 Node.JS 中

于 2020-09-05T06:13:17.610 回答