
最近装了太阳能板,想用 lambda + grafana + prometheus 爬一下逆变器的各种数据做个简单的 dashboard.
然后发现华为光伏的 API 文档写的实在有点粗糙..
还有一些不能理解的地方:
curl -vkX POST \ 'https://au1.fusionsolar.huawei.com:27200/openApi/login?userName=FOO&password=BAR' * Trying 54.153.220.93... * TCP_NODELAY set * Connected to au1.fusionsolar.huawei.com (54.153.220.93) port 27200 (#0) * ALPN, offering h2 * ALPN, offering http/1.1 * Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH * successfully set certificate verify locations: * CAfile: /etc/ssl/cert.pem CApath: none * TLSv1.2 (OUT), TLS handshake, Client hello (1): * TLSv1.2 (IN), TLS handshake, Server hello (2): * TLSv1.2 (IN), TLS handshake, Certificate (11): * TLSv1.2 (IN), TLS handshake, Request CERT (13): * TLSv1.2 (IN), TLS handshake, Server finished (14): * TLSv1.2 (OUT), TLS handshake, Certificate (11): * TLSv1.2 (OUT), TLS handshake, Client key exchange (16): * TLSv1.2 (OUT), TLS change cipher, Client hello (1): * TLSv1.2 (OUT), TLS handshake, Finished (20): * TLSv1.2 (IN), TLS change cipher, Client hello (1): * TLSv1.2 (IN), TLS handshake, Finished (20): * SSL connection using TLSv1.2 / AES128-SHA * ALPN, server did not agree to a protocol * Server certificate: * subject: C=CN; ST=Guangdong; L=Shenzhen; O=Huawei; OU=Network Energy; CN=NetEcoServer * start date: Mar 18 01:23:06 2015 GMT * expire date: Mar 13 01:23:06 2035 GMT * issuer: C=CN; O=huawei; OU=Network Energy; CN=NEPL PKI * SSL certificate verify result: self signed certificate in certificate chain (19), continuing anyway. > POST /openApi/login?userName=FOO&password=BAR HTTP/1.1 > Host: au1.fusionsolar.huawei.com:27200 > User-Agent: curl/7.54.0 > Accept: */* > < HTTP/1.1 200 OK < Date: Tue, 08 Oct 2019 13:02:55 GMT < Set-Cookie: JSESSIOnID=1jsi0rnxij5mzokex34wnr7ig;Path=/;Secure;HttpOnly < Expires: Thu, 01 Jan 1970 00:00:00 GMT < Cache-Control: no-cache < X-Frame-Options: SAMEORIGIN < X-Download-Options: noopen < X-XSS-Protection: 1;mode=block < Strict-Transport-Security: max-age=31536000;includeSubdomains < X-Content-Type-Options: nosniff < Vary: Accept-Encoding, User-Agent < Transfer-Encoding: chunked < {"errorMsg":309} * Connection #0 to host au1.fusionsolar.huawei.com left intact 文档参考:
1 droiz 2019 年 10 月 8 日 凭我对华为软件部门的了解,这属于正常操作... |
2 paulw54jrn OP 相比之下硬件文档实在强太多了 https://support.huawei.com/enterprise/en/doc/EDOC1100011912 ---- self sign 和用户名密码走 query string 真的不能忍 |
3 nosilence 2019 年 10 月 8 日 正常操作,正常操作 |
4 saulshao 这个属于软件部门的正常水平,要知道申请个证书是需要某级别领导审批的。根本就说不清楚为什么这东西还要花钱? |
5 wangyzj 2019 年 10 月 8 日 谁说一定要走 jwt 模式或者 header auth 模式就一定是好的? 证书也是钱啊 200+errcode 也挺好,省着 catch 了 |
6 xabc 2019 年 10 月 8 日 via iPhone 我的问题,卤煮房子是别墅独栋那种 还是 普通顶层? |
7 hakono 2019 年 10 月 8 日 证书太贵,需要领导审批 response 一律 200 附带错误码,是因为需要自定义大量错误码自己处理 把账号密码放到 url 里传……………………………… 对不起,我真的编不下去了,没法洗地了………… |
8 paulw54jrn OP @wangyzj 没有人说一定要走 JWT 或者 header auth. 但是用户名密码走 Query string 这个怎么洗? 用户名密码全部明文记在了 Http log 里面这么基础的安全问题怎么洗? 关于证书要花钱,这么大个企业一年千把块人民币真的出不起吗?现在导致 https 形同虚设 |
9 OSF2E 2019 年 10 月 9 日 可能是造火箭的团队临时被拉过来拧螺丝吧 |
10 serge001 2019 年 10 月 9 日 可能是外包做的 |
11 sunziren 2019 年 10 月 9 日 你住别墅? |
12 stoneabc 2019 年 10 月 9 日 这种可能真的是外包做的… |
13 qwerthhusn 2019 年 10 月 9 日 八成是外包搞的,因为我曾经干过华为的外包。。。 没有 80/443 端口给用 没有证书(外包给的外网权限非常低,大部分网站都访问不了,当然也没发领个免费的证书) http 200 一把梭,这个很正常 |
14 cloudzhou 2019 年 10 月 9 日 @paulw54jrn 但是我看文档,通过 POST 传递,所以你用 form 提交也是可以的,只是你自己的代码怎么写而已 |
15 collery 2019 年 10 月 9 日 嗯,都是外包的锅。毕竟除了硬件都是外包 |
16 alphatoad 2019 年 10 月 9 日 via iPhone 讲道理,有 https 账号密码放 query 不是一个特别大的问题 |
19 Juggernaut 2019 年 10 月 9 日 华为就这水平 |
20 aguesuka 2019 年 10 月 9 日 via Android 正常,海康的接口还是 http,hash 做检验。转动全省 500 多个球机的 aip |
21 subpo 2019 年 10 月 9 日 对华为的软件水平无力吐槽 对楼主装的光伏很感兴趣,详细说说? |
22 jjshare 2019 年 10 月 9 日 朋友多大的屋顶,大概费用多少,我最近寻思着是不是要出一个家用智能光伏解决方案 |
23 wind98 2019 年 10 月 9 日 外包做的,毕竟是硬件公司 |
24 seansong 2019 年 10 月 9 日 登陆失败返回 200 很正常吧,http 状态码指的是你的协议请求是否成功了,而登陆失败是业务状态,协议返回 200,业务状态码返回登陆失败,这不是常规操作么 |
25 paulw54jrn OP @cloudzhou 嗯,说的对,后来又试了一下走 `application/x-www-form-urlencoded` 在 POST body 里面是可行的。 被 https://forum.huawei.com/enterprise/en/communicating-with-neteco-through-an-openapi-user/thread/512431-100027 这里面的截图带歪了,里面走的是 query string |
26 paulw54jrn OP @jjshare 屋顶具体面积没量过. 目前方案是: - 20 片 日升 RSM120-6-330M http://www.risenenergy.com/uploadfile/201908/85d961e3f3.pdf - 华为 SUN20005KTL - 正泰 DTSU666-H 电表 因为不在国内安装,具体费用可能参考价值不大。 |
27 paulw54jrn OP |
28 bwd1991 2019 年 10 月 9 日 把华为想的太高了? ppt 公司 |
29 Chry3anthemum 2019 年 10 月 9 日 via Android @bwd1991 软件同意,硬件那波是在难以苟同 |
30 realpg PRO 华为基本盘…… 你这是没见到曾经的 mib file |
32 lolizeppelin 2019 年 10 月 9 日 我来洗 内部 http 服务为了性能简化了功能,会忽略所有 body 数据,这不就结了 |