本帖最后由 fuinei 于 2022-3-29 00:04 编辑
大家好,我计划通过autoit做一个小应用,主要功能如下:
1、调用外部https接口:根据SN通过get请求查询电脑预设的计算机名
2、把本机的计算机名修改为预置的计算机名
目前第2点已通过论坛的帮忙文档<WMI方式修改计算机名称 >实现
第1点计划让公司的后端开发同学封装出一个不需要鉴权的https接口
但目前尝试winhttp调用https返回随机密码时出现如下图的报错:
测试代码如下:调用不需要鉴权的接口生成16位的随机密码#include "WinHttp.au3"
$InterfaceAddress = "https://xxxx.xxxx.xxx"
$PassLen = 16
$sPage = "/unify-auth/api/public/v1/geRanPasslength=" & $PassLen
$Date = GetRandomPassword($InterfaceAddress,$sPage)
MsgBox(4096,"InterfaceData",$Date)
Func GetRandomPassword($InterfaceAddress,$sPage)
$hOpen = _WinHttpOpen()
$hConnect = _WinHttpConnect($hOpen,$InterfaceAddress)
$hRequest = _WinHttpOpenRequest($hconnect,"GET",$sPage)
_WinHttpSendRequest($hRequest,"Content-Type: application/x-www-form-urlencoded","")
_WinHttpReceiveResponse($hRequest)
$sData = _WinHttpReadData($hRequest)
_WinHttpCloseHandle($hRequest)
_WinHttpCloseHandle($hConnect)
_WinHttpCloseHandle($hOpen)
Return($sData)
EndFunc
请问在autoit内调用https请求是否只能使用WinHttp函数?目前初始测试问题应该在于_WinHttpSendRequest,由于帮助文档信息不多,请各位帮忙看看主要问题应该如何修改,谢谢!
|