使用 JavaScript 循环和 post 结果读取 json 文件

Reading a json file with a JavaScript loop and post the result

我需要读取带有 JavaScript 循环的 .json 文件,但我不知道它应该如何工作。在我阅读 .json 文件后,我应该 post 我读出的东西,在 HTML 文件上。

我不担心 HTML 部分,我更担心 JavaLoop。我现在已经尝试了很多东西,我也阅读了其他用户关于循环的问题。

"source": "/var/log/apache2/git.1234.de-443-access.json",
"data": {
    "http_code": 204,
    "pid": "-",
    "request_id": "-",
    "log_level": "-",
    "body_size": 0,
    "host": "git.1234.de",
    "peer_ip": "10.200.13.212",
    "duration": 1693,
    "source": "-",
    "client_port": "-",
    "error_message": "-",
    "client_ip": "10.200.13.333",

上面你可以看到.json文件,例如我只想获取客户端IP,我该怎么办? 我的 Javascript 循环应该如何读取它?

试试这个,你会得到 client-ip

    var obj = { 
     "source": "/var/log/apache2/git.1234.de-443-access.json",
     "data": {
        "http_code": 204,
        "pid": "-",
        "request_id": "-",
        "log_level": "-",
        "body_size": 0,
        "host": "git.1234.de",
        "peer_ip": "10.200.13.212",
        "duration": 1693,
        "source": "-",
        "client_port": "-",
        "error_message": "-",
        "client_ip": "10.200.13.333",
    }
   }

//for client_ip ,
var client_ip = obj.data.client_ip;
console.log(obj.data.client_ip)

您可以在 Node 中尝试这个

const fs = require('fs')
    fs.readFile('./demo.json', 'utf8', (err, jsonString) => {
        try {
                const file= JSON.parse(jsonString)
                console.log("Client IP:", file.data.client_ip) 
        } catch(err) {
                console.log('Error parsing JSON string:', err)
            }
        })