UI設計したり、ウェブシステムを開発したりします。 

SQL見るだけクエリ#319 Google Sheetsと連携するシンプルなWebアプリケーションの例

記入日:2023-11-23 編集日:2023-11-23

Google Sheetsと連携するシンプルなWebアプリケーションの例について解説してみようと思います。

この記事を読むと(約5分)
Google Sheetsと連携するシンプルなWebアプリケーションの例についてイメージできます。

Google Sheetsと連携するシンプルなWebアプリケーション

Webアプリケーションとして公開する例を示します。以下は、Google Sheetsと連携するシンプルなWebアプリケーションの例です。 この例では、外部からのHTTP POSTリクエストを受け取り、Google Sheetsにデータを書き込むスクリプトを実行します。

1. Google Apps Scriptの作成:

Google Sheetsを開き、「拡張機能」 → 「アプリスクリプト」を選択して新しいスクリプトファイルを作成します。 スクリプトファイルに以下のようなコードを記述します:

function doPost(e) {
  var sheet = SpreadsheetApp.openById('Your_Spreadsheet_ID').getActiveSheet();
  var data = JSON.parse(e.postData.contents);

  // データをGoogle Sheetsに書き込む
  sheet.appendRow([data.field1, data.field2, data.field3]);

  return ContentService.createTextOutput("Data written to Google Sheets successfully");
}

このスクリプトは、外部からのHTTP POSTリクエストを処理し、JSON形式のデータをGoogle Sheetsに書き込みます。

2. Webアプリケーションとして公開:

スクリプトエディタで「公開」 → 「ウェブアプリケーションとして導入」を選択します。 アプリケーションの設定を行い、アクセス権を設定します。 「実行時にアプリケーションを実行するユーザー」を「自分」に設定し、「アプリケーションにアクセスできるユーザー」を「誰でも」に設定します。 公開後、提供されたURLがWebアプリケーションのエンドポイントとなります。

3. 外部のプログラムからのHTTP POSTリクエスト:

外部のプログラム(例: PHP、Pythonなど)で、公開されたWebアプリケーションのエンドポイントにHTTP POSTリクエストを送信します。

$url = "https://script.google.com/macros/s/AKfycb.../exec";
$data = array(
  'field1' => 'Value1',
  'field2' => 'Value2',
  'field3' => 'Value3'
);

$options = array(
  'http' => array(
    'header' => "Content-Type: application/json",
    'method' => "POST",
    'content' => json_encode($data)
  )
);

$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);

// レスポンスを出力
echo $result;

この例では、PHPを使用していますが、他のプログラミング言語でも同様にHTTP POSTリクエストを送信できます。

この例では、Google Sheetsにデータを書き込む簡単なWebアプリケーションを作成しました。外部のプログラムからこのアプリケーションにデータを送信すると、それがGoogle Sheetsに反映されます。

SQLの使いどころ

サイトに大量の情報を掲載することは、ユーザーにとってとても便利なことです。しかし、情報が多すぎると、目的の情報を見つけるのが困難になります。そのため、SQLを使用することで、情報を効率的に管理することができます。

SQLを使用することで、データベース内の情報を検索したり、フィルタリングしたりすることができます。これにより、ユーザーは目的の情報をスムーズかつ簡単に見つけることができます。

また、SQLを使用することで、データを集計したり、統合したりすることもできます。これにより、ユーザーはさまざまな視点から情報を分析することができます。つまり、サイトに多くの情報を掲載することが重要である一方で、その情報を効率的かつ簡単に管理することが求められる場合には、SQLが不可欠であるといえます。

KK

機械工学を専攻。工業デザイナーとして、国内及び海外の自動車・搬送ラインの設計などに従事した後、2003年にウェブシステム会社を設立。UI設計やウェブシステムの開発、DX化のディレクションなどを行っています。