晚上好,
我是节点上的新手,所以我在尝试从服务器端编写客户端上的任何数据时遇到问题。首先,在客户端,我尝试这个:
$.get("myNode.js", function( data ) {
var bottle = JSON.parse(data);
var name = bottle.name;
alert(name)
});
在服务器方面,说实话,我不知道该放什么,我已经尝试过:
app.get("myNode.js", function(require, response){
response.json({ name: "example" });
});
虽然有这些:
var express = require('express');
var app = express();
但是我不认为它的工作方式如此,并且无法弄清楚服务器端如何对客户端做出响应。所以任何帮助都会很好。
困扰我的另一件事,我怎么能告诉服务器GET它应该给我,如果我在页面上有不同的元素,那些应该从服务器给我不同的信息,我怎样才能指定那些GET' S'
有任何帮助,感谢您的时间和支持!
问候。
答案 0 :(得分:0)
根据您发布的内容,您似乎对网址在您的应用中的工作方式感到有些困惑。设置app.get()
时,传入的第一个参数是端点。它可能看起来像:
app.get("/getMyData", function(req, res) {...});
如果您在本地服务器上运行此操作,则可以通过在浏览器中转到http://localhost:8080/getMyData
来访问此端点。然后使用JQuery的get方法,你可以传入那个确切的url,它应该为你返回一些数据。
如果您需要多个端点,则可以添加更多app.get()
个具有不同端点名称的函数,例如/getMyData2
。
答案 1 :(得分:0)
好的,所以我现在在我的客户端:
$("#Beer").click(function(){
$.get("/getMyData", function( data ) {
var bottle = JSON.parse(data);
var name = bottle.name;
alert(name)
});
})
在服务器端:
http.createServer(function(req, res) {/*Reads File and writes it*/
res.writeHead(200, {"Content-Type": "text/html"});
var q = url.parse(req.url, true);
var filename = "." + q.pathname;
fs.readFile(filename, function(err, data) {
res.writeHead(200, {'Content-Type': 'text/html'});
res.write(data);
res.end();
})
/*App get*/
app.get("/getMyData", function(require, response){
response.json({ name: "example" });
});
}).listen(8080);
我仍然认为我做得不太好,我不明白。到目前为止它没有提醒我什么。 app get是否应该使用?并且response.json真的发送数据吗?