Html+JS+PowerShell如何打造Web版AD管理系统

技术Html+JS+PowerShell如何打造Web版AD管理系统这篇文章主要介绍Html+JS+PowerShell如何打造Web版AD管理系统,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!利

本文主要介绍了Html JS PowerShell如何构建一个Web版的AD管理系统。很详细,有一定的参考价值。感兴趣的朋友一定要看完!

用Flask调用Powershell API实现运维管理系统。

其实原理是一样的,主要是使用Django/Flask框架,Bootstrap作为前端,然后后台python调用PowerShell API实现查询。

但是后台同时有powershell和python,这让我很不爽。我只想用PowerShell,所以我有下面的折腾。

前往演示Html+JS+PowerShell如何打造Web版AD管理系统

首页是一个简单的html。为了好看,使用了引导框架。

Bootstrap-table用于通过表格显示查询到的数据,还具有导出、排序和分页功能。

事件控制:jquery、ajax

是后台PowerShell实现的API。网上有很多。我在豆豆的博客中尝试了HttpListener的模块,以及微软员工制作的web框架https://github.com/PowerShell/Polaris。没有问题。应该是PowerShell的Web框架。

1.在后台执行PowerShell

import-modulec : \ users \ yuan . Li \ Documents \ GitHub \ Powershell \ httplistener . PS m1

start-httplistener-verb-authnone-port 8888注意:我对HTTPListener.psm1的内容做了一些更改,以避免跨域限制。

#区域跨域

$回应。AddHeader('访问控制-允许-来源',' * ');

$回应。添加标题(“访问控制-允许-标题”、“身份验证”);

$回应。AppendHeader('访问控制-允许-头','原始,无缓存,X-请求-有,如果-修改-自,Pragma,上次修改,缓存控制,过期,内容类型,X-E4M-有');

#endregion跨域未被很好地理解。我在网上找到的,直接贴上去,但是真的很管用。

2.没有python和flask/django框架,所有控件都由JS实现。

首先,使用Geturl()拼接powershell调用的url。

var $ PS webpai=' http://10 . 128 . 9/?命令='

//构建WebapiURL

functionGetURL(选项){ 0

//切换网址

开关(选项){ 0

案例“邮件”:

var $ cmdlet=' Get-ADUser-Filter * | selectName,SamAccountName,user principalname | Where-Object { $ _。UserPrincipalName-ne$null}”

打破;

(=NationalBureauofStandards)国家标准局

p;   case "computer":
            var $cmdlet = "Get-ADComputer -Filter * -Property name,DNSHostName,OperatingSystem,OperatingSystemServicePack,OperatingSystemVersion"
            break;
    }
    var $url = $pswebpai + $cmdlet
    //alert($url)
    return $url
}

然后,用ajax实现异步执行

    //当点击查询按钮的时候执行  
    $QueryButton.click(function () {
        //获取下拉菜单值
        var option = $("#myselect").val();
       var $url = GetURL(option);
        $.ajax({
            url: $url,
            dataType: 'json',
            contentType: 'application/json',
            charset: 'UTF-8',
            success: function (result) {
                console.log("Success");
                //console.log(result);
                CommonTableInit(option, result); //初始化表格的函数
            },
            error: function (result) {
                alert("error!");
            }
        });
    });

这样一个Web查询功能就实现了。而且不用装python,flask\django框架了,部署的话也很简单,直接挂个地址就好了。(flask版试了在IIS下部署,没成功- -~)
后续还可以扩展增删改查功能。
目前唯一的问题就是HTTPListener有时查询会报错退出,估计换个健壮点的PowerShell Web框架就可以了。
Html+JS+PowerShell如何打造Web版AD管理系统
其他思路:
1.完全用PowerShell Web框架去实现。
2.dotNet Core Web应用,生成exe格式的自托管console应用程序,直接双击执行。(WebAPI,C#调用powershell)

×××链接:
http://down.51cto.com/data/2441697

跨域这块儿一直没搞明白,用jsonp的话,debug的响应里能看到返回的json对象,但是console.log(返回的json对象);的话,则看不到任何返回的json对象数据,ajax的回调函数也没有接收到json对象,感觉就好像而是直接被浏览器接收了。。。换了好几个powershell WebAPI都是这个问题。直接访问powershell webapi也都是有数据的。
Html+JS+PowerShell如何打造Web版AD管理系统Html+JS+PowerShell如何打造Web版AD管理系统

以上是“Html+JS+PowerShell如何打造Web版AD管理系统”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/114459.html

(0)

相关推荐

  • html5是什么缩写(html5缩写成h5)

    技术html5是什么的缩写这篇文章给大家分享的是有关html5是什么的缩写的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 html5是HyperText Marku

    攻略 2021年12月13日
  • 美国服务器搭建SOCKS5代理的好处

    技术美国服务器搭建SOCKS5代理的好处随着跨境电商业务的火爆,很多用户需要利用SK5代理进行电商平台后台操作或者推广,那么利用美国服务器搭建SK5有哪些好处呢,下面就来简单介绍一下以下是使用美国SOCKS5代理的 4

    礼包 2021年12月14日
  • Maven编译打包时如何忽略测试用例

    技术Maven编译打包时如何忽略测试用例本篇文章给大家分享的是有关Maven编译打包时如何忽略测试用例,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。跳过测试

    攻略 2021年10月29日
  • 自学JavaSE(四)--Java基础

    技术自学JavaSE(四)--Java基础 自学JavaSE(四)--Java基础1.Scanner对象Java提供的工具类,我们可以获取用户输入。java.util.Scanner是Java5的特性基

    礼包 2021年12月22日
  • wcf继承实体序列化怎么处理(wcf的完整形式是什么)

    技术WCF序列化是什么本篇内容介绍了“WCF序列化是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!近期看了大量关于W

    攻略 2021年12月14日
  • spark的数据本地优化级别(spark参数优化)

    技术spark中怎么配置启用LZO压缩这篇文章给大家介绍spark中怎么配置启用LZO压缩,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Spark中配置启用LZO压缩,步骤如下:一、spark-en

    攻略 2021年12月17日