2016-09-30 126 views
0

我需要幫助獲取用戶瀏覽器信息,IP地址和GEO位置。我們正在開發asp.net應用程序,我們需要上述信息來跟蹤他/她通過瀏覽器/ IP信息訪問應用程序的用戶信息。以下是我們需要和需要存儲在應用程序數據庫中的詳細信息。如何獲取用戶瀏覽器的詳細信息,IP地址和位置信息?

  1. 瀏覽器信息/版本
  2. 操作系統
  3. 設備(臺式機/筆記本電腦/平板電腦/手機)
  4. IP地址
  5. 國家代碼/國家名稱
  6. 區域

是否可以從一次來源獲取所有信息?我使用了這些API,並建議使用第三方API來獲取基於IP地址的地理信息,無論API是否可靠地使用這些應用程序。有沒有最好的方法來建立自己的API來獲取這些信息,以及如何?請指教。

+1

一些需要的信息可以在'navigator'對象中找到。允許地理位置跟蹤取決於用戶的偏好,IP檢測只能在服務器端完成。 – Teemu

+0

navigator.geolocation會在我們檢索信息時詢問用戶的許可,並且不支持舊版瀏覽器。 – Adhith

回答

1

請嘗試以下JavaScript函數,這將返回瀏覽器名稱和瀏覽器版本。

function get_browser() 
{ 
    var ua = navigator.userAgent, tem, 
    M=ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i) ||[]; 

    if (/trident/i.test(M[1])) 
    { 
     tem = /\brv[ :]+(\d+)/g.exec(ua) || []; 
     return { name: 'IE', version: (tem[1] || '') }; 
                 } 
     if (M[1] === 'Chrome') 
     { 
      tem = ua.match(/\bOPR\/(\d+)/) 

      if (tem != null) 
      { 
       return { name: 'Opera', version: tem[1] }; 
      } 
     } 

    M = M[2] ? [M[1], M[2]] : [navigator.appName, navigator.appVersion, '-?']; 
    if ((tem = ua.match(/version\/(\d+)/i)) != null) 
    { 
     M.splice(1, 1, tem[1]); 
    } 

    return { 
     name: M[0], 
     version: M[1] 
    }; 
} 
相關問題