Tôi đang làm việc với một tiện ích bổ sung của Firefox (được viết bằng JavaScript) và cần phải xác định người dùng Windows hiện đã đăng nhập. Có cách nào để làm việc này không?Tải tên người dùng Windows trong tiện ích bổ sung Firefox cũ (không phải WebExtensions)
Trả lời
Bạn có thể sử dụng giao diện nsIEnvironment để nhận USERNAME
biến môi trường.
là có một tương đương IE cho điều này mà không cung cấp cho các rắc rối ActiveX nào (người dùng được cho biết rằng có một nguy cơ bảo mật vv) khi đi qua quá trình nhận được tên người dùng? – pythonian29033
<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 không hoạt động chính xác trong Firefox. – sdwilsh
này hiện các trick trên Windows:
function getUser() {
return Components.classes["@mozilla.org/process/environment;1"].getService(Components.interfaces.nsIEnvironment).get('USERNAME');
}
Giải pháp này cho tôi lỗi này'TypeError: Components.classes là undefined', Bạn nghĩ giải pháp cho lỗi này là gì? – Scar
Điều này không hoạt động trong Firefox như câu hỏi ban đầu đang được yêu cầu. – Monkpit
@Scar: Theo như tôi đã hiểu [bài đăng Stackoverflow này] (http://stackoverflow.com/questions/21378058/why-components-classes-is-undefined), bạn không thể sử dụng Components.classes trong các trang web thông thường. Nó có nghĩa là để sử dụng trong các phần mở rộng/addons của Firefox. – Stephanie
Firefox đã có Integrated Authentication tích hợp (nhiều người không biết rằng).
Xem: https://developer.mozilla.org/en-US/docs/Integrated_Authentication
Đây là một addon Firefox được ưa thích đó giúp giảm bớt các cấu hình: https://addons.mozilla.org/nl/firefox/addon/integrated-auth-for-firefox/
Dưới đây là một số giải thích thêm:
http://justgeeks.blogspot.nl/2011/01/firefox-supports-integrated-windows.html
Chúc may mắn!
mã sau đây làm việc cho tôi thay vì sự kiện onload với các cuộc gọi chức năng:
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);
Người hỏi sử dụng * firefox *. Câu trả lời này sử dụng M $ ActiveX! Nó sẽ không hoạt động (và tôi không thể tin rằng tôi thực sự thử nghiệm nó, nhưng tôi đã làm). Trên thực tế đã có một Plugin ActiveX cho firefox (một số lứa tuổi trước đây, khoảng thời đại của FF2), nhưng ActiveX bây giờ là trên danh sách chặn mozilla. ([nguồn] (http://kb.mozillazine.org/ActiveX)). – GitaarLAB
Đã kiểm tra nhưng mã này chỉ hoạt động trong Internet Explorer và sẽ không hoạt động trong Firefox. Các tùy chọn tốt nhất là tạo ra một điều khiển ẩn/textbox mà giữ giá trị được đưa ra từ mã phía sau (phía máy chủ), sử dụng javascript để có được giá trị bạn cần. Xem xét xu hướng hiện tại, không phải ai cũng sử dụng IE để thực hiện công việc của họ nữa. – mutanic
10 đại diện cho sự cố hiển thị cho chúng tôi có các tùy chọn bổ sung – pythonian29033
- 1. appendChild trong một tiện ích bổ sung Firefox XUL
- 2. Sự khác nhau giữa tiện ích mở rộng Firefox và tiện ích bổ sung Firefox là gì?
- 3. Có giấy phép mặc định cho tiện ích bổ sung của Firefox không?
- 4. Thư viện tiện ích bổ sung Visual Studio?
- 5. Định vị bảng điều khiển với SDK Tiện ích bổ sung của Firefox
- 6. Tải xuống các tệp bằng trình bổ sung Firefox
- 7. Chúng tôi có thể có tiện ích bổ sung (FireFox) hoặc tiện ích mở rộng (Chrome) trong trình duyệt dành cho thiết bị di động [Android hoặc iPhone]
- 8. Tìm người dùng hiện đang đăng nhập từ một tiện ích mở rộng Firefox
- 9. Có tiện ích bổ sung Firefox nào để sử dụng vim để chỉnh sửa hộp văn bản không?
- 10. cung cấp cho người dùng openid thông tin bổ sung
- 11. Làm cách nào để xuất bản tập lệnh Greasemonkey dưới dạng tiện ích bổ sung cho Firefox?
- 12. Tạo một tiện ích Firefox mới: XUL hoặc Jetpack?
- 13. Phát hiện tin nhắn tới tiện ích bổ sung từ tập lệnh nội dung onbeforeunload?
- 14. Sửa đổi nội dung của hộp thoại tải xuống Firefox từ bộ công cụ bổ sung
- 15. Cách kiểm tra xem tiện ích con giao diện người dùng jQuery có được tải không?
- 16. Tiện ích bổ sung để sao chép phần tử trang có kiểu
- 17. Truy cập cookie cụ thể theo tên miền/tên trong tiện ích mở rộng của Firefox
- 18. XMLHttpRequest trong Tiện ích mở rộng của Firefox
- 19. Tiện ích bổ sung Internet Explorer để phát hiện các cuộc gọi Ajax
- 20. Chuyển đổi Tiện ích mở rộng của Google Chrome sang tiện ích mở rộng của Firefox hoặc Safari
- 21. jQuery trong tiện ích
- 22. Xdebug không phải là tiện ích mở rộng zend IIS7
- 23. Tại sao JavaScript chậm hơn trong chương trình bổ trợ FireFox so với một trang web được tải trong FireFox?
- 24. Cách tốt nhất để lưu trữ dữ liệu người dùng 'bổ sung' trong MySQL?
- 25. Sự khác biệt giữa trình quản lý tiện ích bổ sung Visual Studio 2010 và trình quản lý tiện ích mở rộng
- 26. Tiện ích bổ sung Heroku MongoHQ và PyMongo - OperationFailure: lỗi cơ sở dữ liệu: không được phép
- 27. Cấu hình tìm kiếm tiện ích tự động hoàn thành giao diện người dùng jQuery
- 28. Mất tiện ích khi sử dụng FileReference tải xuống
- 29. Nhận tên người dùng Windows từ phía máy chủ WCF
- 30. Có thể thêm các trường bổ sung dưới tạo người dùng trong Liferay
Đây là một nguy cơ bảo mật và là lý do tại sao nó không được tiếp xúc trong javascript. Bạn đang cố làm gì vậy? –
Tôi đang xây dựng một tiện ích mở rộng nội bộ cho một công ty và cần xem người dùng nào yêu cầu tài liệu nào. – cwhiii
@duskwuff, Tại sao lại gặp phải một câu hỏi 7 năm cho bản chỉnh sửa đó? Tất cả những gì bạn đã làm là thay thế một thẻ trong tiêu đề bằng một thẻ khác trong tiêu đề. Các thẻ đã làm cho nó rõ ràng đây là về một add-on của Firefox. Không cần phải chỉnh sửa điều này để thực hiện thay đổi đó. Trong thực tế, nếu bạn muốn nhận được pedantic, chúng tôi không phải có thẻ không tách rời trong tiêu đề, do đó, "Nhận tên người dùng Windows" sẽ thích hợp hơn. Bạn đang đề xuất chúng tôi luôn đặt thẻ trong tất cả các tiêu đề? – Makyen