내가 좌표는 Google 또는 유사에 함수 호출을 사용하여 검색됩니다Node.js에서 클라이언트 측 JavaScript와 어떻게 통신합니까? 예를 들어
function getLocation() {
var latitude = ...;
var longitude = ...;
}
자바 스크립트 기능이 클라이언트 측을 가정합니다. 이 정보를 Node.js 서버로 어떻게 전송할 수 있습니까?
내가 좌표는 Google 또는 유사에 함수 호출을 사용하여 검색됩니다Node.js에서 클라이언트 측 JavaScript와 어떻게 통신합니까? 예를 들어
function getLocation() {
var latitude = ...;
var longitude = ...;
}
자바 스크립트 기능이 클라이언트 측을 가정합니다. 이 정보를 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 요청을 작성합니다.
XMLHttpRequest object을 사용하거나 <form>
을 생성 한 다음 제출하거나 다양한 방법을 사용할 수 있습니다.
또는 웹 소켓을 엽니 다. – Raynos
(소프트) 실시간 기능이 필요한 경우 Socket.io library을 사용하는 것이 좋습니다. 소켓을 사용하면 노드가 클라이언트 사이드 스크립트로 데이터를 보낼 수도 있습니다.
그는 아마도 socket.io가 필요하지 않을 것입니다. – Raynos
하하, 왜 Quentin의 게시물에 WebSockets을 언급 했습니까? :디. 바로 socket.io가 제공하지만 cross-browser를 지원합니다. –
나는 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이 필요하다고 생각합니다. node modules section also has a section covering RPC 나는 DNode을 봐야한다고 생각합니다. DNode on the browser section을 살펴보십시오.
왜 어떤 종류의 템플릿 시스템을 사용하지 않습니까? 그것은 당신의 인생을 더 편리하게 만들 것입니다 – elclanrs
@elclanrs 어떻게 templating 가능성이 도움이 될까요? – Raynos