javascript - 使用 nodejs 发送对 html 的响应来使用 REST

标签 javascript html node.js rest

我是 Nodejs 的初学者,我有一个副项目来检查我的端点的状态。

我最初尝试使用 XMLHttp 来实现,但由于 CORS,我的请求被阻止了。现在我想尝试使用 Node 使用这些 API 点,如果它返回 200,则将行绘制为绿色,如果它向下将行绘制为红色。

我的 server.js 有以下代码

var express = require('express');
var app = express();
var request = require('request');

var port = process.env.PORT || 3000;
app.set('port', (port));

app.use(express.static(__dirname + '/'));
app.get('/', function(request, response) {
  response.render('/');
});

app.listen(app.get('port'), function() {
  console.log('Node app is running on port', app.get('port'));
});

var services = [
    {
        url: 'MyGetEndpoint'
    },
    {
        url: 'MyGetEndpoint'
    }
];

function checkService( url ) {
    request(url, function (error, response, body) {
        if (!error && response.statusCode == 200) {
            console.log(response) 
        }
        else{
            console.log(error);
        }
    });
}

function loadDoc() {
    var url;

    for(var i in services){
        url = services[i].url;

        checkService( url );
    }
}

loadDoc();

在终端上,我可以看到我的两个端点被发回,所以在我的前端,如果一个端点是状态 200,我想给背景着色。

<div id="result" class="media text-muted pt-3">

如何从我的服务器获取 URL?我是否需要使用 ajax 执行另一个 javascript 来调用我的 loadDoc,或者我可以直接发送到浏览器吗?

在此先致谢,非常感谢任何帮助。我读了以下与我的相似的问题,但我无法完全理解它们的含义。 Here

最佳答案

引用route parameters在 expressjs 文档中。使用 url 作为路由参数。如何返回服务状态由您决定,您可以使用 express-flash将数据闪存到模板。您可以将它用作可以是 curled 的端点通过客户端的浏览器。

关于javascript - 使用 nodejs 发送对 html 的响应来使用 REST,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49081866/

相关文章:

angularjs - 使用 Javascript 多次调用 REST API 或一次调用大型响应正文

javascript - 第一次测试 Mocha

javascript - 选择下拉菜单关闭事件

javascript - Vue2 & $refs & 无法读取未定义的属性 'msg'

javascript - 附加浏览文件输入不显示预览图像

javascript - canvas.toDataURL() 在 IE 11 中给出 "Security Error"

c# - 使用 css 样式打印

javascript - 如何从angularjs关闭 Bootstrap 模式窗口

javascript - Bootstrap 管理模板响应菜单不起作用

c - NodeJs 和 C 子进程之间通信的最佳方式