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

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

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

Googleは多種多様なAPIを提供していて、その多くはウェブ開発者向けのAPIです。それらのAPIは消費者に人気なGoogleのサービス(Google Maps, Google Earth, AdSense, Adwords, Google Apps,YouTube等)に基づいています。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

Q&A

解決済

1回答

829閲覧

google books api をnode.jsで取得する方法

ayaqos

総合スコア1

Google API

Googleは多種多様なAPIを提供していて、その多くはウェブ開発者向けのAPIです。それらのAPIは消費者に人気なGoogleのサービス(Google Maps, Google Earth, AdSense, Adwords, Google Apps,YouTube等)に基づいています。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

0グッド

0クリップ

投稿2021/05/18 09:48

前提・実現したいこと

node.jsを使用してgoogle books apiから情報取得した内を表示させたいです

発生している問題・エラーメッセージ

Error: Cannot find module 'ローカルフォルダ名' at Function.Module._resolveFilename (node:internal/modules/cjs/loader:941:15) at Function.Module._load (node:internal/modules/cjs/loader:774:27) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:76:12) at node:internal/main/run_main_module:17:47 { code: 'MODULE_NOT_FOUND', requireStack: [] }

該当のソースコード

const fetch = require('node-fetch'); fetch('https://www.googleapis.com/books/v1/volumes?q=東野圭吾') .then(res => res.text()) .then(body => console.log(body));

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

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

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

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

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

guest

回答1

0

ベストアンサー

こんな感じでいかがでしょう。
インストールしたnpmモジュールはnode-fetchだけです。
(注意)クエリーに日本語(東野圭吾など)を含む場合は別途エンコード処理が必要です。

◆ index.js

Javascript

1const fetch = require('node-fetch'); 2const URL = 'https://www.googleapis.com/books/v1/volumes?q=Mark Twain' 3 4fetch(URL) 5 .then(res => { 6 if (!res.ok) { 7 throw new Error(`${res.status} ${res.statusText}`); 8 } 9 return res.text(); 10 }) 11 .then(text => console.log(text)) 12 .catch(err => console.error(err));

◆実行

$ node index.js { "kind": "books#volumes", "totalItems": 725, "items": [ { "kind": "books#volume", "id": "GJEOAQAAMAAJ", "etag": "WxY0ZPpAAw0", "selfLink": "https://www.googleapis.com/books/v1/volumes/GJEOAQAAMAAJ", "volumeInfo": { "title": "The Writings of Mark Twain [pseud.]", "authors": [ "Mark Twain" ], "publishedDate": "1899", "industryIdentifiers": [ { "type": "OTHER", "identifier": "UOM:49015002156819" } ], 以下省略

投稿2021/05/18 11:19

編集2021/05/18 11:20
technocore

総合スコア7337

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

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

ayaqos

2021/05/18 12:52

回答頂きありがとうございます!うまく動作いたしました。とても助かりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問