Sheets `clear` operation breaks with HTTP/2

オープン
#3,602 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 2 日以内に返信

まだ誰も着手していません。

評価

難易度
3/5
見積もり時間
1〜2日
初心者へのやさしさ
45/100
issue の種類
バグ
明瞭さ
明確に書かれている
活発さ
停滞
技術スタック
node.js, typescript
領域
api, networking

調査の方向性

リンクされた公開 gist から始め、HTTP/2 を有効にして Sheets の clear 操作を再現し、その後、動作する HTTP/1.1 の挙動と比較します。gist が使用するクライアントパスを追跡し、clear が成功したレスポンスと、指定された sheet が実際にクリアされたことを確認して修正を検証します。

索引モデルが issue の本文から書いたものです。

説明

Please make sure you have searched for information in the following guides.
A screenshot that you have tested with "Try this API".

N/A

Link to the code that reproduces this issue. A link to a public Github Repository or gist with a minimal reproduction.

https://gist.github.com/neil-lobo/e632aae751fe7aec8bbc29a42c585015

A step-by-step description of how to reproduce the issue, based on the linked reproduction.
  1. Save credentials.json file with correct access to sheet to root of project
  2. Replace [sheet ID] with accessible sheet
  3. Run script
  4. Observe output
  5. Turn off http2
  6. Observe output
A clear and concise description of what the bug is, and what you expected to happen.

Using the http2 option, the clear operation does not work. I assume https://github.com/googleapis/google-api-nodejs-client/issues/1801#issuecomment-524921412 is no longer the case since there is an explicit option to enable http2 now.

Referring to the gist, the expected output is

finish get 200
finish clear 200
<end of program>

however the output is

finish get 200
<end of program>

Disabling http2 produces the correct output. Note that this is not simply a response issue, the operation itself does not reflect in the specified sheet.

A clear and concise description WHY you expect this behavior, i.e., was it a recent change, there is documentation that points to this behavior, etc. **

Breaks usage

主要言語
TypeScript
スター
12.3k
フォーク
2k
平均マージ
3日 10時間
マージ済み PR(30日)
9

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

googleapis/google-api-nodejs-client のほかの issue

googleapis/google-api-nodejs-client の issue をすべて見る

似ている issue

TypeScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。