C# OneNote API创建笔记本

C# OneNote API创建笔记本,c#,onenote-api,C#,Onenote Api,当我尝试创建新的OneNote API笔记本时,收到一个“错误请求” private async Task<string> CreateSimpleNotebook(string notebookName, string apiRoute) { var client = new HttpClient(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityH

当我尝试创建新的OneNote API笔记本时,收到一个“错误请求”

 private async Task<string> CreateSimpleNotebook(string notebookName,  string apiRoute)
    {
        var client = new HttpClient();

          client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

        try
        {
            client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", authResult.AccessToken);
        }
        catch (Exception ex)
        {
            string tempEx = ex.ToString();
        }

        var createMessage = new HttpRequestMessage(HttpMethod.Post, apiRoute )
        {
            Content = new StringContent("{ name : '" + WebUtility.UrlEncode(notebookName) + "' }", Encoding.UTF8, "application/json")
        };

        HttpResponseMessage response = await client.SendAsync(createMessage);

        return response.Headers.Location.ToString();
    }
以下是答复:

    {StatusCode: 400, ReasonPhrase: 'Bad Request', Version: 1.1, Content: System.Net.Http.StreamContent, Headers:
{
  client-request-id: acacd4f5-8738-4c46-8150-17aa23413eb5
  request-id: acacd4f5-8738-4c46-8150-17aa23413eb5
  Transfer-Encoding: chunked
  x-ms-ags-diagnostic: {"ServerInfo":{"DataCenter":"South Central US","Slice":"SliceB","Ring":"NA","ScaleUnit":"002","Host":"AGSFE_IN_10","ADSiteName":"SAN"}}
  Duration: 772.4124
  Cache-Control: private
  Date: Sun, 19 Nov 2017 20:59:10 GMT
  Content-Type: application/json
}}
  • 您应该使用内容类型JSON
  • 您要查找的属性的名称不是“名称”,而是“显示名称”

  • 此外,通过添加字符串来制作JSON不是最佳做法-我建议使用JSON库,如NewtonSoft JSON.NET。

    感谢“displayName”解决了这个问题。我不知道应该在哪里更改内容类型JSON。作为请求的HTTP头。
        {StatusCode: 400, ReasonPhrase: 'Bad Request', Version: 1.1, Content: System.Net.Http.StreamContent, Headers:
    {
      client-request-id: acacd4f5-8738-4c46-8150-17aa23413eb5
      request-id: acacd4f5-8738-4c46-8150-17aa23413eb5
      Transfer-Encoding: chunked
      x-ms-ags-diagnostic: {"ServerInfo":{"DataCenter":"South Central US","Slice":"SliceB","Ring":"NA","ScaleUnit":"002","Host":"AGSFE_IN_10","ADSiteName":"SAN"}}
      Duration: 772.4124
      Cache-Control: private
      Date: Sun, 19 Nov 2017 20:59:10 GMT
      Content-Type: application/json
    }}