2013-03-26 39 views
5

Tôi muốn phân tích url được yêu cầu. Khi tôi sử dụng websocket.io tôi đã có một đối tượng yêu cầu tôi có thể phân tích cú pháp. Làm thế nào tôi có thể làm điều đó với socket.io?url yêu cầu phân tích cú pháp node.js - socket.io được yêu cầu

dụ:

http://localhost:4000/foo 

làm thế nào tôi có thể nhận ra "foo"? tôi đã cố gắng:

io.sockets.on('connection', function (socket) { 


    console.log(socket.handshake.address.address); 
      console.log(socket.handshake.url); 
} 

nhưng nó không in "foo"

Trả lời

1

Sử dụng api URL. http://nodejs.org/docs/latest/api/url.html

u = url.parse(url) 
console.log(u.path) 
+0

nhưng au tôi có nhận được chuỗi mà tôi có thể phân tích cú pháp không? – poppel

+0

@poppel oh! xin lỗi, tôi không nhận ra bạn không có thông tin đó. Bạn luôn có thể lấy URL bằng cách sử dụng 'window.location' ở phía máy khách và chuyển thông tin đó cùng với dữ liệu của bạn. – Munim

+0

Chỉ cần lưu ý rằng việc tin tưởng trang để gửi địa chỉ chính xác là rất xấu. Nếu bạn có một số loại hệ thống phòng hoặc hệ thống xác thực dựa vào bạn đang ở một địa chỉ cụ thể, người dùng chỉ có thể giả mạo nó và truy cập vào các địa điểm khác. – JamEngulfer

3

BTW - cách tiếp cận của bạn chính xác nếu bạn đang cung cấp các thông số để kết nối socketio thay vì yếu tố con đường. Nó giải quyết vấn đề của tôi khi sử dụng https://github.com/pkyeck/socket.IO-objc với nodejs socketio để thêm các thông số vào kết nối socket của tôi.

Ví dụ:

[socketIO connectToHost:@"localhost" onPort:8888 withParams:[NSDictionary dictionaryWithObject:@"52523f26f5b23538f000001c" forKey:@"player"]]; 

URL cấu trúc như sau:

http://localhost:8888/socket.io/1/?t=16807&player=52523f26f5b23538f000001c 

Các params có thể truy cập vào máy chủ trong socket.handshake.query

socketio.listen(server).on('connection', function(socket) { 
console.log('socket info = ', socket.handshake.query.player); 
0

Tôi đang truy cập url như sau:

io.on('connection', function(conn){ 
    console.log(conn.handshake.headers.referer); 
}); 
Các vấn đề liên quan