在 Node 中.js我如何与客户端 JavaScript 通信
In Node.js how do I communicate with client side JavaScript?
例如,假设客户端我有一个JavaScript函数
function getLocation() {
var latitude = ...;
var longitude = ...;
}
坐标是使用对 Google 或类似函数调用来检索的。 如何将此信息传输到我的 Node.js 服务器?
最简单的方法? 设置 Express 并让您的客户端代码通过 Ajax 进行通信(例如,使用 jQuery)。
(function() {
var app, express;
express = require("express");
app = express.createServer();
app.configure(function() {
app.use(express.bodyParser());
return app.use(app.router);
});
app.configure("development", function() {
return app.use(express.errorHandler({
dumpExceptions: true,
showStack: true
}));
});
app.post("/locations", function(request, response) {
var latitude, longitude;
latitude = request.body.latitude;
longitude = request.body.longitude;
return response.json({}, 200);
});
app.listen(80);
}).call(this);
在客户端,您可以这样称呼它:
var latitude = 0
, longitude = 0; // Set from form
$.post({
url: "http://localhost/locations",
data: {latitude: latitude, longitude: longitude},
success: function (data) {
console.log("Success");
},
dataType: "json"
});
请注意,此代码只是一个示例;您必须计算错误处理等。
希望有帮助。
通过发出 HTTP 请求,就像您在 Web 应用程序中处理任何其他服务器端程序一样。
您可以使用 XMLHttpRequest 对象执行此操作,或者通过生成<form>
然后提交它,或者使用各种其他方法。
如果您需要(软)实时功能,我建议使用 Socket.io 库。使用套接字,节点还可以将数据推送到客户端脚本。
我认为NowJS将非常适合您。例:
// On the Node.JS server
var nowjs = require("now");
var everyone = nowjs.initialize(httpServer);
everyone.now.getServerInfo = function(callback){
db.doQuery(callback);
}
// In the browser
<script>
now.getServerInfo(function(data){
// data contains the query results
});
</script>
您可以将变量和函数放在一个公共命名空间(即now
对象)中,从客户端到服务器,反之亦然。
我认为你需要RPC。节点模块部分还有一个涵盖 RPC 的部分。我想你应该看看DNode。看看浏览器部分的 DNode。
相关文章:
- 如何将权限/授权数据传递到客户端Javascript
- 如何通过服务器上的Node从客户端JavaScript上传到谷歌云存储
- Telerik RadGrid排序客户端JavaScript jQuery
- 如何在客户端javascript中需要节点模块
- 客户端javascript没有'找不到我的网址
- 使用document.cookie将客户端javascript转换为节点模块
- Fido U2F客户端javascript源代码
- 从服务器端经典 asp 和客户端 javascript 传递字符串
- 如何将 Node.js 环境变量注入客户端 JavaScript
- RSS Feeds - 添加服务器端(PHP)或客户端(JavaScript / jQuery)
- 在客户端 Javascript 方法之后运行服务器方法
- 客户端 JavaScript 没有定义 - 但它在 HTML 源代码中.任何人都知道为什么
- Imgur 通过客户端 javascript 上传工作,但不是 node.js.慌乱了
- 突出显示与perl正则表达式匹配的HTML部分 - 在服务器端perl或客户端javascript中执行此操作
- Django设计模式-在加载时填充客户端JavaScript变量的方法
- 将Date从客户端(Javascript)发送到WebApi的最佳方式是什么
- 客户端JavaScript Facebook OAuth2实现
- 我已经从d3图表中创建了一个base64图像,需要使用客户端javascript或angular将其发布到faceboo
- 使用rest客户端/javascript验证microsoftoutlook-web(owa)
- 如何将客户端javascript返回值传递给ASP经典服务器端