2010-07-28 25 views
20

Tôi hiện đang làm việc trên các ứng dụng web trên thiết bị di động và tôi đã tự hỏi liệu có một số loại id duy nhất cho mỗi thiết bị có thể được phát hiện thông qua trình duyệt hay không.có thể nhận số nhận dạng duy nhất từ ​​thiết bị di động không?

Mục đích là lưu trữ số này để nhận ra những người đã truy cập trang web.

Tôi đã làm việc với bluetooth khá nhiều và có một số loại địa chỉ mac bạn có thể lưu trữ khi phát hiện thiết bị và tôi đã sử dụng số này làm số Id, do đó, đó là câu hỏi của tôi. có thể phát hiện từ trình duyệt ...?

Cảm ơn.

+1

Tôi ghét điều này nếu tôi có thể được nhận ra từ một ID duy nhất thông qua trình duyệt. Tôi có thể bị theo dõi khắp mọi nơi. Bởi vì các nhà thiết kế trình duyệt cũng biết điều này, tôi cho rằng bạn sẽ phải để lại một cookie. – MvanGeest

+3

lol bạn đang lừa dối chính mình nếu bạn nghĩ rằng điện thoại di động của bạn không phải là công cụ cho phép mọi người theo dõi bạn ở mọi nơi ... Trong trường hợp của tôi, tôi không có ý định "theo dõi" mọi người vì mục đích xấu, tôi chỉ muốn người dùng không phải tải các trang giới thiệu vv lần thứ hai ... Cookie sẽ hoạt động nhưng nếu chúng bị vô hiệu hóa hoặc nếu thiết bị không hỗ trợ ... – Piero

Trả lời

26

Vâng sau khi nghiên cứu sâu hơn, câu trả lời là: Không, nó không thể ngay bây giờ để có được một số thiết bị di động id từ trình duyệt của mình ...

Một giải pháp tôi thấy là để tạo ra một "độc đáo" number (trong trường hợp của tôi tôi đã làm việc với php, vì vậy tôi đã sử dụng session_id() số hỗn hợp với một số được tạo ra với hàm rand(), nó kết thúc là một số khá lớn sẽ khó xảy ra hai lần ...) và sau đó lưu nó vào một cookie không bao giờ hết hạn. Nó không phải là một giải pháp hoàn hảo, vì nó sẽ không hoạt động nếu cookie bị vô hiệu hóa hoặc nếu người dùng xóa cookie của mình, nhưng thực sự sau khi sử dụng nó đôi khi, nó chỉ ra rằng nó hoạt động khá tốt, thiết bị di động chủ yếu có cookie được bật và người dùng dường như không xóa chúng thường xuyên ...

Ngoài ra (tùy thuộc vào ứng dụng của bạn) nếu bạn lưu trữ email hoặc tên người dùng và sau đó liên kết nó với số "duy nhất" này vào cơ sở dữ liệu, thậm chí bạn có thể khôi phục danh tính của ai đó và lưu trữ cookie mới bằng cách hỏi lại tên người dùng hoặc email của mình ...

Hy vọng điều này sẽ giúp một số người!

+0

Cảm ơn vì cách giải quyết này. Điều gì xảy ra nếu người dùng sử dụng trình duyệt khác trên cùng một thiết bị? –

+0

Trong trường hợp họ sẽ có số ID cho mỗi trình duyệt ... – Piero

0

Ở một số quốc gia, nhà cung cấp dịch vụ bao gồm một số id trong tiêu đề http khi người tiêu dùng duyệt qua cổng WAP. Có một số tập hợp với các API để nhận dạng người tiêu dùng, bình thường nó chỉ hoạt động khi người tiêu dùng đang duyệt qua các cổng WAP.

+0

ok, cảm ơn thông tin, nhưng với tất cả các thiết bị mới chạy trên các kết nối 3g, tôi đoán điều này là không giúp đỡ ... – Piero

-1

Tôi đang làm điều gì đó tương tự nhưng đối với trang địa phương HTML để lưu trữ id trong localstorage và cuối cùng cập nhật lên máy chủ: - lấy ngày trong epoch ms - và sau đó thay thế số đầu tiên bằng một số ngẫu nhiên để giới hạn kích thước của số điện thoại) Bằng cách nào đó tôi nghĩ rằng thiết bị di động có nhiều khả năng đúng giờ hơn.

+0

thực sự có liên quan không? Tôi không thực sự hiểu những gì bạn đang nói về! – Piero

+0

Tôi đã đọc lại câu hỏi ban đầu mà tôi duyệt khi tôi đang khắc phục sự cố của mình, điều này thực sự bị hạn chế hơn: người dùng đơn lẻ trên các thiết bị khác nhau. Vì vậy, từ quan điểm của bạn, bạn có thể đúng. Lấy làm tiếc. – leDamien

4

Sam Greenhalgh chỉ tìm thấy một cách để thiết lập một thiết bị ID qua "Super Cookie":

http://www.radicalresearch.co.uk/lab/hstssupercookies

+1

Ý tưởng đằng sau nó là tốt, nhưng hsts siêu cookie arent được hỗ trợ trên tất cả các trình duyệt, do đó, nó vẫn không phải là một giải pháp hoàn chỉnh ... mặc dù tôi tìm thấy những siêu cookies freaky :) – Piero

+0

Khả năng sử dụng HSTS để xác định thiết bị là không mong muốn tác dụng phụ của tính năng này. Tôi sẽ không giới thiệu nó cho bất kỳ loại hệ thống sản xuất nào. –

2

Tôi biết điều này là cũ - nhưng tôi thấy điều này và muốn chia sẻ những suy nghĩ của tôi về của OP tiếp theo điều tốt nhất bằng cách sử dụng số loại GUID.

Trừ khi bạn cần bảo mật của số nhận dạng không thể đoán được - điều này có ý nghĩa hơn đối với máy chủ để tạo bộ đếm đơn giản - ví dụ: bắt đầu ở ~ 100 và cho mọi khách truy cập chưa có cookie tối đa của bạn (truy cập) + 1 để tạo cookie mới của họ.

Bây giờ bạn có một số nhận dạng duy nhất rất ngắn và 100% mà bạn có thể lưu trữ cho cả khách hàng và máy chủ.

Ngoài ra, khi bạn đề cập đến việc lưu trữ địa chỉ email cũng hữu ích, theo lý thuyết địa chỉ email phải là duy nhất - không chỉ vậy - nó tương thích với trình duyệt chéo. nghĩa là cookie của họ tồn tại trên một trình duyệt - nhưng khi truy cập một trình duyệt mới, nếu họ nhập cùng một địa chỉ email bạn có thể ánh xạ tới hồ sơ kết nối ban đầu của họ.

Mặc dù bạn đề cập đến điều này và sự thật của nó, điều quan trọng cần lưu ý là bất kỳ ai đưa vào dữ liệu tinh vi, ví dụ: [email protected] có ​​thể sẽ được tải lên với lịch sử người dùng khác. tức là trong trường hợp của bạn - một người dùng hoàn toàn mới đăng nhập vào [email protected] sẽ không được xem các trang giới thiệu.

Các vấn đề liên quan