我尝试使用PowerShell执行此操作,但我收到400个错误:
$RESTURL = 'https://mycomp.atlassian.net/rest/api/latest/issue/PROJ-61'
$body = '{"fields":{"assignee":{"name":"me"}}}'
$restcreds = [System.Convert]::ToBase64String(
[System.Text.Encoding]::ASCII.GetBytes(('me' + ":" + 'mypass123'))
)
$httpheader = @{Authorization = "Basic $restcreds"}
$restParameters = @{
Uri = $RESTURL;
ContentType = "application/json";
Method = "PUT";
Headers = $httpheader;
Body = $body;
}
Invoke-RestMethod @restParameters
如果我删除" body"从请求并将其更改为get我成功获取数据。看来我只是修改了票证
答案 0 :(得分:1)
如果您收到400(错误请求),则表示您的请求正文中存在错误。
响应正文将包含更详细的错误消息,并将清楚说明您需要修复的内容。
没有错误信息,我只能猜测: 我不确定将受让人设置为“我”是否有效,除非“我”确实是用户的名字。如果您尝试使用完整的用户名或使用“密钥”而不是“名称”会发生什么?
GET请求正常工作的事实表明您的凭据是正确的,因此这不是身份验证问题。