移动云查看账号下所属云电脑属于什么类型的底座的三种方法

移动云云电脑目前有3种不同的底座分别为H3C、中兴、自研。但是我们在订购云电脑都时候是随机进行分配且登录控制台【实例管理】里面也没办法看到我们都云电脑属于什么样的底座。
在需要判断所属云电脑属于什么底座的话,有以下几种方式可以进行判断和获取
第一种方法
常规的方法就是登录云电脑后,进程管理器查看相关进程的路径是包含H3C还是ZTE,由此可以判断是何种底座。
通过进程管理器来判断底座的的方式适合少量主机,如果有大批量的主机需要查询底座,这种办法就比较麻烦。
第二种方法
通过所属网络可用区进行查看,同一可用区属于同一底座。
以厦门节点为例
- ONEDAAS开头的为华三底座
- XM开头的为中兴底座
- CMSS开头的为自研底座

第三种方法
移动云控制台没显示的值,有可能隐藏在请求响应里面,通过该猜想,我们访问移动云云电脑实例管理界面,通过F12开发者工具,搜索关键字ZTE或者H3C,可以发现在请求
https://ecloud.10086.cn/api/web/EMportal/inner/ccemp-gateway/admin/api/resource/page
响应内容中包含了云电脑的相关信息,其中companyCode字段和resourceTypeName字段 包含底座相关信息。

有了以上的信息后,我们可以通过curl命令与jq命令配合 批量导出云电脑底座信息
执行后,将会在/tmp/目录下生成output.csv文件,注意http请求需要替换对应授权的值和Cooike,data中pageSize为响应最多返回的云电脑数,如果云电脑比较多,需要调到该值
curl -s 'https://ecloud.10086.cn/api/web/EMportal/inner/ccemp-gateway/admin/api/resource/page' \
-H 'Accept: application/json, text/plain, */*' \
-H 'Accept-Language: zh-CN,zh;q=0.9' \
-H 'Authorization: 改成你自己账号登录后的值' \
-H 'Content-Type: application/json' \
-b 'CMECLOUDTOKEN=改成你账号登录后的cookie;' \
--data '{"viewType":"organization","instanceId":"","userName":"","machineName":"","machineId":"","policyId":"","policyName":"","isActive":"","companyTag":"","poolCode":"","region":"","dc":"","orderSource":"","netService":"","machineStatus":"","resourceTypeName":"","computerProtocol":"","operateSystem":"","effectiveTimeStart":"","effectiveTimeEnd":"","createdTimeStart":"","createdTimeEnd":"","orgId":null,"pageSize":80,"mopUserName":"","vpcName":"","securityGroupName":"","qosName":"","timeout":18000}' jq -r '.data.records[] | [.instanceId, .companyCode] | @csv' > /tmp/output.csv


既然响应的数据中已经有包含对应的字段,那有没有办法登录账号后,直接让对应的字段显示在云电脑实例管理的控制台?
继续通过F12搜索分析,发现https://ecloud.10086.cn/api/query/ccemp/EMportal/inner/organization/js/chunk-00e8af20.bd79b7ef.js 这个js为vue用于前端渲染表格内容的代码
理论上我们只要在这个代码里面加上一段代码让js执行的时候 动态的生成底座的信息到表格里面就可以了。

要实现这个方法,可以利用chrome 本地文件替换远程js的方法。
首先右键chunk-00e8af20.bd79b7ef.js的请求,选择替换内容,如果第一次操作,开发者工具顶部会提示让你选择一个文件夹用于存在替换的js文件

选择存放的文件夹,点击【允许】,这样就会在选中的文件夹中创建本地的chunk-00e8af20.bd79b7ef.js文件


正常情况下点完允许后会自动跳转到替换界面的代码编辑框中,然后就可以进行代码的修改了

我们搜索关键字:241941489 然后找到对应的行后,在该行下t("el-table-column" 前面添加代码。然后ctrl+s 保存
t("el-table-column", {
attrs: {
prop: "companyCode",
label: "底座",
"show-overflow-tooltip": true,
"min-width": "120"
},
scopedSlots: e._u([{
key: "default",
fn: function(t) {
return [e._v(" " + e._s(t.row.companyCode || "-") + " ")]
}
}])
}),


保存后,保持F12开发者工具为开启状态,刷新云电脑实例管理界面。页面底座信息就显示出来了

正常情况下,不去取消替换的话,下次打开F12还是自动为保持替换的状态,后续只要登录账号后,按F12开启开发者工具,再刷新页面,页面就会自动添加一列底座信息了

(注意,该方法不适用于导出清单,即使按照上面方法替换代码后,导出的清单还是不会包含底座信息)
如果还是不懂改的 可以直接下载改后的代码进行替换
需要自行创建如下文件夹,Z:\chrome_dev 可以变动,Z:\chrome_dev目录下的路径必须保持一致
Z:\chrome_dev\ecloud.10086.cn\api\query\ccemp\EMporital\inner\organization\js
修改后的js文件下载地址
链接: https://caiyun.139.com/w/i/2nc6jGaXAHKm8
提取码:zhkd 复制内容打开中国移动云盘手机APP,操作更方便哦
下载后保存到上面路径的js文件夹下,并在chrome开发者工具--【源代码/来源】--【替换】
下手动选择Z:\chrome_dev目录