osc*_*arm 8 javascript real-time node.js
在这个非常简单的例子中:
var sys = require("sys"),
http = require("http");
http.createServer(function(request, response) {
response.writeHead(200, {"Content-Type": "text/plain"});
response.end("Hello World!");
}).listen(8080);
sys.puts("Server running at http://localhost:8080/");
Run Code Online (Sandbox Code Playgroud)
1.)我可以从客户那里获得什么样的信息?喜欢浏览器,屏幕分辨率等?
2.)如何从客户端向服务器发送信息,如参数?
谢谢!
cyb*_*bat 19
1)推荐人URL,IP地址,用户代理,屏幕大小和其他统计数据.您也可以获得地理位置,但这涉及更多.
2)标题中有一些数据可用,因此每次请求都会发送这些数据 - 屏幕大小等其他数据有点棘手,因此您需要发送一个ajax请求来发送它.
// Somewhere on your page(s) - here we use jQuery
$(document).ready(function(){
// Check if they have been logged
if ($.cookie('logged') == null ){
// Send screen size and whatever else that is not available from headers
$.post('/logger', { width: screen.width, height: screen.height }, function(res) {
// Set cookie for 30 days so we don't keep doing this
$.cookie('logged', true, { expires: 30 });
});
}
});
// Server side - example is an Express controller
exports.logger = function(req, res) {
var user = {
agent: req.header('user-agent'(, // User Agent we get from headers
referrer: req.header('referrer'), // Likewise for referrer
ip: req.header('x-forwarded-for') || req.connection.remoteAddress, // Get IP - allow for proxy
screen: { // Get screen info that we passed in url post data
width: req.param('width'),
height: req.param('height')
}
};
// Store the user in your database
// User.create(user)...
res.end();
}
Run Code Online (Sandbox Code Playgroud)
小智 6
您无法获取屏幕分辨率信息,但可以从"请求标头""用户代理"中获取用户代理
| 归档时间: |
|
| 查看次数: |
25602 次 |
| 最近记录: |