Как подать «Недопустимые запросы [0] .updateTextStyle: в« полях »должно быть указано хотя бы одно поле. (Используйте '*', чтобы указать все поля.) "> ' - PullRequest
1 голос
/ 11 июня 2019

Я пытаюсь обновить Google Docs, и когда я пытаюсь нажать на обновление, оно говорит googleapiclient.errors.HttpError: <HttpError 400 when requesting https://docs.googleapis.com/v1/documents/1UeorM9adOh8Nds1Z457RRKBZMkh0VZ_kn_jllpkzh7U:batchUpdate?alt=json returned "Invalid requests[0].updateTextStyle: At least one field must be listed in 'fields'. (Use '*' to indicate all fields.)">, и я понятия не имею, что это значит.

Это метод, который выдает ошибку

def update(request):
    result = service.documents().batchUpdate(
        documentId=DOCUMENT_ID, body={'requests': [request]}).execute()
    return result

Если кто-то может помочь, это было бы здорово!

Это мой запрос

request = {
  'updateTextStyle': {
    'range': {
      'segmentId': None,
      'startIndex': None, # gets filled with the proper number
      'endIndex': None # gets filled with the proper number
    },
    'textStyle': {
      "bold": False,
      "italic": False,
      "underline": False,
      "strikethrough": False,
      "smallCaps": False,
      "backgroundColor": {
        'color': {
          'rgbColor': {
            'red': 0.2,
            'green': 0.2,
            'blue': 0.2
          }
        }
      },
      "foregroundColor": {
        'color': {
          'rgbColor': {
            'red': 0.96,
            'green': 0.96,
            'blue': 0.96
          }
        }
        },
    "fontSize": {
        'magnitude': 10,
        'unit': 'PT'
    },
  "weightedFontFamily": {
    'fontFamily': 'Courier New OS',
    'weight': 400
  },
  "baselineOffset": 'NONE',
  "link": None
    }
  }
}

1 Ответ

0 голосов
/ 11 июня 2019

At least one field must be listed in 'fields'. (Use '*' to indicate all fields.) означает, что свойство fields не задано в теле вашего запроса.Например, как насчет этой модификации?

От:

  },
  "baselineOffset": 'NONE',
  "link": None
    }
  }
}

До:

            },
            "baselineOffset": 'NONE',
            "link": None
        },
        "fields": "*"  # Added
    }
}

Примечание:

  • Этот ответПредполагается, что вы уже смогли обновить Документ Google с помощью API Документов Google.
  • В этой модификации предполагается, что при использовании этого тела запроса заменяются None из 'range': {'segmentId': None, 'startIndex': None, 'endIndex': None}, и "link": Noneна правильные значения.

Ссылка:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...