我正在使用Firefox附加組件(用JavaScript編寫),需要確定當前登錄的Windows用戶。有沒有辦法做到這一點?獲取Windows用戶名(不是WebExtensions)Firefox插件
回答
您可以使用nsIEnvironment接口獲取USERNAME
environmnet變量。
是否有一個IE瀏覽器等同於此,在通過獲取用戶名的過程中不會給ActiveX所做的麻煩(用戶被告知存在安全風險等)? – pythonian29033 2013-08-08 09:16:47
<html>
<head>
<script language="javascript">
function GetUserName()
{
var wshell = new ActiveXObject("WScript.Shell");
alert(wshell.ExpandEnvironmentStrings("%USERNAME%"));
}
</script>
</head>
<body OnLoad="GetUserName();">
</body>
</html>
ActiveX在Firefox中不能正常工作。 – sdwilsh 2010-06-04 00:57:31
這確實在Windows的伎倆:
function getUser() {
return Components.classes["@mozilla.org/process/environment;1"].getService(Components.interfaces.nsIEnvironment).get('USERNAME');
}
這個解決方案給了我這個錯誤'TypeError:Components.classes是undefined',你認爲這個錯誤的解決方案是什麼? – Scar 2012-10-08 13:22:07
這不適用於Firefox,因爲原始問題在問。 – Monkpit 2015-01-13 20:05:42
@Scar:據我瞭解[這Stackoverflow後](http://stackoverflow.com/questions/21378058/why-components-classes-is-undefined),你不能使用Components.classes中定期的網頁。這意味着用於Firefox擴展/插件。 – Stephanie 2015-03-12 13:09:50
火狐已經有了集成身份驗證內置的(很多人不知道)。
請參閱:https://developer.mozilla.org/en-US/docs/Integrated_Authentication
這裏是一個流行的Firefox插件,簡化了配置: https://addons.mozilla.org/nl/firefox/addon/integrated-auth-for-firefox/
下面是一些額外的解釋:
http://justgeeks.blogspot.nl/2011/01/firefox-supports-integrated-windows.html
祝你好運!
下面的代碼對我的作品,而不是onload事件與函數調用:
var objUserInfo = new ActiveXObject("WScript.network");
document.write(objUserInfo.ComputerName+"<br>");
document.write(objUserInfo.UserDomain+"<br>");
document.write(objUserInfo.UserName+"<br>");
var uname = objUserInfo.UserName;
alert(uname);
提問者使用* firefox *。這個答案使用M $ ActiveX!它不會工作(我不相信我真的測試過它,但我做到了)。實際上Firefox有一個ActiveX插件(幾年前,在FF2的時代),但ActiveX現在在Mozilla的阻止列表中。 ([源(http://kb.mozillazine.org/ActiveX))。 – GitaarLAB 2013-04-06 17:37:14
經過測試,但此代碼只能在Internet Explorer中運行,並且不能在Firefox中運行。最好的選擇是創建一個隱藏的控件/文本框來保存代碼後面給出的值(服務器端),使用javascript獲取您需要的值。考慮到目前的趨勢,並非所有人都使用IE來完成他們的工作。 – mutanic 2013-07-03 03:17:30
10代表向我們展示有額外選擇的麻煩 – pythonian29033 2013-08-08 09:12:25
- 1. 使用WebExtensions在Firefox插件中創建未修改的對象
- 2. 如何使用新的WebExtensions插件更改Firefox標籤顏色?
- 3. 如何在Firefox WebExtensions中獲得openerTabId?
- 4. Mozilla WebExtensions支持Firefox配置文件
- 5. WebExtensions:檢測FireFox的安裝事件
- 6. WebExtensions和Firefox Android:如何獲取BrowserApp對象
- 7. 通過WebExtensions獲取Firefox中browser.storage.local的大小
- 8. Firefox WebExtensions選項卡API如何獲取正在加載的URL
- 9. Firefox不按名稱獲取
- 10. WebExtensions BrowserAction彈出的Firefox
- 11. RequireJS不會在Firefox中使用JavaScript WebExtensions附加組件
- 12. 使用Windows Azure獲取Facebook用戶名
- 13. Firefox - 擴展名爲獲取Windows用戶名並將其傳遞到網頁。
- 14. Firefox插件並不總是獲取視頻src
- 15. 在Spring MVC中獲取Windows用戶名
- 16. 獲取windows用戶名和javascript
- 17. 獲取Windows用戶名以NaCl nexe
- 18. 獲取用戶名asp.net windows auth
- 19. 獲取Windows登錄用戶名ASP .net
- 20. 獲取Windows用戶名和密碼
- 21. 如何獲取Windows用戶名
- 22. 獲取Windows用戶顯示名稱
- 23. 如何獲取Windows用戶名
- 24. 獲取Intranet的Windows用戶名
- 25. 使用插件SDK獲取Firefox插件中的頁面標題
- 26. Windows上的Firefox NPAPI插件
- 27. 從overlay.js獲取HEAD元素firefox插件
- 28. Firefox是使用插件
- 29. 用於NTLM的apache插件獲取登錄用戶名
- 30. 使用php獲取當前用戶的Windows用戶名?
這是一個安全隱患,這就是爲什麼它沒有在JavaScript曝光。你想做什麼? – 2010-06-03 18:41:17
我正在爲公司建立內部擴展,並需要查看哪個用戶請求哪個文檔。 – cwhiii 2010-06-03 19:02:10
@duskwuff,爲什麼碰到一個7歲的問題只是爲了編輯?你所做的只是用標題中的另一個標籤替換標題中的一個標籤。標籤已經明確表示這是關於Firefox附加組件的。沒有必要編輯這個來做出改變。事實上,如果你想要得到迂腐,我們不應該在標題中包含非整體標籤,所以「獲取Windows用戶名」會更合適。你是否建議我們總是在所有標題中添加標籤? – Makyen 2017-10-07 05:54:24