我有一個非常簡單的單頁應用程序(由index.html,style.css,functions.js和data.json組成),我試圖變成一個Express/Node.js應用程序來添加一些附加功能。我是Node.js的新手。將單頁應用程序轉換爲Express應用程序,AJAX和.json文件存在問題
我已經通過創建一個app.js文件,其中包含下面的代碼這樣做:
var express = require('express');
var app = express();
var path = require('path');
// viewed at http://localhost:8080
app.use(express.static(__dirname + '/public'));
app.listen(8080);
基本的應用程序文件都在/公用文件夾,所以這個工作得很好。唯一不能工作的部分是POST請求,它是functions.js中的一個AJAX函數,用於提取data.json。現在,這會返回一個404
現在,我可以通過添加以下代碼來獲取app.js到data.json app.js:
var testData = require("./public/data.json");
console.log(testData);
這只是正常和日誌來安慰,所以它的工作,我知道它正在找到該文件,但數據不可用於我的functions.js文件中的任何功能。我猜這是因爲它在服務器端,而AJAX請求會將它帶到客戶端。就像我說的,我是Node.js和Express的新手,這是我理解不足的地方。
所以,我的問題是,如何複製我在我的functions.js文件中的AJAX POST請求的功能?是否只需要將我的data.json文件放在其他位置,或者設置另一條路徑?或者,我是否需要將更多此功能轉移到app.js文件,並以某種方式在客戶端使用創建的變量(現在包含data.json中的所有數據)?如果是這樣,我該怎麼做?我很欣賞這是一個廣泛的問題 - 我不一定需要完整的代碼來提供解決方案(如果這很費勁);關於在哪裏看,以及我應該如何做這件事的指針會有幫助。當我知道去哪裏看時,我很樂意做自己的研究 - 現在,我不知道。
任何幫助,非常感謝。謝謝。