我正在尝试对任务对象使用 markDone 操作。我的猜测是这是一个 PUT,但我尝试了一个 POST。我还没有尝试使用 PUT 或 POST 参数的 GET,我将在接下来尝试。但是,我宁愿不走这条路。我对 Web API 相当陌生,这是我第一次尝试编写与另一个 API 对话的 API,因此这可能会解决这个问题。我正在使用 HttpClient 对象并尝试过 PostAsync 和 PutAsync。以下是我目前拥有的。
using (var apiManagementSystem = new HttpClient())
{
apiManagementSystem.BaseAddress = new Uri("https://xxxxxxx.preview.workfront.com/attask/api/");
apiManagementSystem.DefaultRequestHeaders.Clear();
apiManagementSystem.DefaultRequestHeaders.Add("SessionID", "xxxxxxx");
HttpContent httpContent = new StringContent("?ID=xxxxxxx&action=markDone&status=CPL");
HttpResponseMessage responseMessage = apiManagementSystem.PutAsync("Task", httpContent).Result;
}
即使您不知道上面的代码是否正确,您也可能知道 URL 是什么或标题应该是什么。