質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
XML

XMLは仕様の1つで、マークアップ言語群を構築するために使われています。

JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

コールバック

コールバックは他のコードに引数として渡されるコードのことを指します。

Q&A

解決済

1回答

1107閲覧

XMLHttpRequest関数を使ってjson形式で、取得したスプレットシートのdata.lengthが、途中までしか取得できていない。

iwata9

総合スコア1

XML

XMLは仕様の1つで、マークアップ言語群を構築するために使われています。

JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

コールバック

コールバックは他のコードに引数として渡されるコードのことを指します。

0グッド

0クリップ

投稿2020/07/18 04:21

編集2020/07/19 04:11

google map APIもコールバック関数も初心者で、基本的なことを質問していたら、大変申し訳ございません。
なにとぞ、教えたいただけるとうれしいです。

問題点は、google map APIを使って、スプレットシートのデータからマップにマーカーを立てたいのですが、スプレットシートには、31行あるのに、24行しか、反映されません。
console.log()で取得したデータを見ると、次のように、24行で成功したとなっています。
24行目がおかしいのかな、と思って、そのデーターを削除してみたり、末尾のデーを31行から32行と1行、追加てみたりしたのですが、やはり24行しか、取得していません。

エラーならまだしも、成功したって言うのは、どういうことなのでしょうか?

{results: Array(24), hasNextPage: true}
hasNextPage: true
results: (24) [{…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}]
proto: Object

これからまだまだ情報を追加したいと考えていますので、どうぞ教えた頂ける助けになります。

javascriptの情報を下記に記します。

function initMap() { var target = document.getElementById('map'); var centerp = {lat: 34.8530007, lng: 135.7713904}; map = new google.maps.Map(target, { center: centerp, zoom: 14, }); var request = new XMLHttpRequest(); request.open('GET', 'https://api.sheetson.com/v1/sheets/sheet1? spreadsheetId=1r_eNztKCcRo6PZq_U5InXm8lQ16Ro5d32YSW5GpeJYE', true); request.responseType = 'json'; request.onload = function () { var markerData = this.response; console.log(markerData); setData(markerData); }; request.send();

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2020/07/18 04:40

こーどは ``` と ``` で囲ってください(``` はバッククォート 3 つ)。インデントされて見やすくなるので。インデントされてないコードは質問者さん自身も読む気がしないのでは?
iwata9

2020/07/19 00:44

見にくい書き方をしてしまって申し訳ありませんでした。。 修正をしてみましたが、もし、まだ、見にくいところが有ったら、遠慮なく教えてください。 もし、質問の回答がわかりましたら、教えて頂けると大変うれしいです。 よろしくお願いいたします。
退会済みユーザー

退会済みユーザー

2020/07/19 03:33 編集

コードを拝見しました。 残念ながら、google map API とかは触ったこともない自分には、コードを読んで API の仕様を調べて、使っている .css とか .js のライブラリ(?)を調べて、問題を切り分けして、質問にピンポイントで答えるということは無理のようです。 質問と同様なコードを書いて同様な問題に悩んだ経験のある回答者が現れるのを待つほかなさそうな気がします。 #「こういうコードが書ける知識がある」=「自己解決できるスキルがありそう」と思うのですが・・・
Y.H.

2020/07/20 07:51

iwata9さん google map関係なく、 spreadsheetから対象取得するのにSheetsonというサービスを使用していて 24レコードまでしか返してくれないってことでいいですよね?
guest

回答1

0

ベストアンサー

Sheetsonというサービスを使用されていることを質問に記載いただいた方がよかったと思います。

hasNextPage: true

と返ってきているので、まだ続きがあるよということですね。
skipパラメータを24として再度リクエストすると続きが取れそうですね。

規定値では最大24レコードと記載ありますね。

https://docs.sheetson.com/manage-data/paginate-filter/#paginate-data

By default, each time we request multiple rows, the maximum number of rows to return is 24.

limitパラメータを指定することで最大100レコードまで指定できるようですよ。

We can also increase this upto 100 by specifying limit parameter in the URL.

投稿2020/07/20 07:48

Y.H.

総合スコア7918

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

iwata9

2020/07/21 12:53

教えてくださってありがとうございます。sheetsonのページは私も見ていたのですが、よく分からなかったのです。Y.H.さんの説明をみて、なるほど、そういうことだったのか、と納得できました。 もともと、24レコードが最大値だったのんですね。limitパラメータを指定して、コードを書きなおしてみます。ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問