Google Apps Scriptに挑戦中

hagi2021/01/12(火) - 21:38 に投稿
Script Editorの画面

数日前から、GASに挑戦している。もともとは、Webformでalgoliaを利用してlocationを拾ってみたでD9で現在位置が拾えないことが分かったのが原因である。現時点で、とりあえず、緯度経度が取れるところまでは行った。

実用化まではまだかなりの道程があるが、Google Driveからフォームを作って、そこからScript Editorを起動して、

function doGet() {
  var html = HtmlService.createTemplateFromFile("location.html");   
  myPrint("Started","")
  return html.evaluate();
}
function myPrint(lat,long){
  Logger.log("%s %s",lat,long);
}

を「コード.gs」に書き、新たにHTMLを作成して、locationと名付け、以下のコードを書いた。

<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
  </head>
  <body>
    <script>
    function currentPosition() {
      navigator.geolocation.getCurrentPosition(success);
    }
    function success(position) {
      var latitude = position.coords.latitude;
      var longitude = position.coords.longitude;
      google.script.run.withSuccessHandler().myPrint(latitude,longitude)
    }
    currentPosition()
    </script>
  </body>
</html>

これで、実行してログを見ると「2021/01/12 18:08:04 情報 35.7??? 139.7???」といった形でデータが取れている。

フォームの起動時か、終了時にトリガーをかけて、記録すれば何とかなりそうだと思っている。

Decoupleの時代にフロントはJavascriptになるのは自然だなあ、と考えさせられたのであった。

タグ