我想使用PowerShell使用POST方法将文件上传到我的网站。但是,我收到了错误:
Invoke-RestMethod: 401未经授权 擅自 此服务器无法验证您 有权访问该文档 请求。要么你提供了错误的 凭据(例如,密码错误)或您的凭据 浏览器不了解如何供应 所需的证书。
这是客户端代码:
MapType type = context.getTypeFactory()
.constructMapType(HashMap.class, String.class, Car.class);
serializers.addSerializer(new MaptoListSerializer(type));
context.addSerializers(serializers);
这是服务器端代码(在PHP中)(我知道,我还没有检查用户是否有权上传文件):
$uri = "https://mywebpage.domain.net/restapi/put/"
$username = "someuser"
$password = "somepasswd"
$headers = @{"Authorization" = "Basic "+[System.Convert]::ToBase64String([System.Text.Encoding]::UTF8.GetBytes($username+":"+$password))}
Invoke-RestMethod -Uri $uri -contentType "multipart/form-data" -Method Post -Headers $headers -InFile "stats2.json"
put()函数是用于处理请求的类的成员。