我试图PUT在我的方法中使用该方法,我REST API认为我有语法问题.到目前为止,这就是我所拥有的:
$url3 = "example.com"
$contentType3 = "application/json"
$basicAuth3 = get_token
$headers3 = @{
Authorization = $basicAuth3
};
$data = @{
userId = "_39_1";
courseId = "_3_1";
availability = {
available = "Yes"
};
courseRoleId = "Student"
};
$json = $data | ConvertTo-Json;
Invoke-RestMethod -Method PUT -Uri $url3 -ContentType $contentType3 -Headers $headers3 -Body $json;
Run Code Online (Sandbox Code Playgroud)
我不认为Invoke-RestMethod能够读取$json变量,这就是为什么它给我一个错误.有什么建议?
我得到的错误如下:
Invoke-RestMethod:远程服务器返回错误:(400)错误请求.在E:\ PowerShell\Get_User_Enroll.ps1:62 char:1 + Invoke-RestMethod -Method PUT -Uri $ url3 -ContentType $ contentType3 -Headers $ he …
我有一个我无法弄清楚的问题.这是一个无法解决的语法问题.假设我有这个功能:
function putStudentCourse ($userName, $courseId)
{
$url = "http://myurl/learn/api/public/v1/courses/courseId:" + $courseId + "/users/userName:" + $userName
$contentType = "application/json"
$basicAuth = post_token
$headers = @{
Authorization = $basicAuth
}
$body = @{
grant_type = 'client_credentials'
}
$data = @{
courseId = $courseId
availability = @{
available = 'Yes'
}
courseRoleId = 'Student'
}
$json = $data | ConvertTo-Json
$putStudent = Invoke-RestMethod -Method Put -Uri $url -ContentType $contentType -Headers $headers -Body $json
return $json
}
Run Code Online (Sandbox Code Playgroud)
然后我的主要方法:
#MAIN
$userName = "user02";
$courseId = …Run Code Online (Sandbox Code Playgroud)