HiÐΞWeb3

ブラウザでメモ → ブックマークレット → LINEにメモ送付 (モバイルでもできる)

SHOGAKU
5ヶ月前
ウェブからLINEへ瞬時に情報共有:LINE NotifyとGoogle Apps Scriptを活用注意: Microsoft Edgeでの使用と特定のサイトでのエラーまとめモバイルでの使用感

LINE NotifyとGoogle Apps Script(GAS)を活用して、ウェブページ上のテキストをLINEへ送信するプロセス


ウェブからLINEへ瞬時に情報共有:LINE NotifyとGoogle Apps Scriptを活用

はじめに

このガイドでは、LINE NotifyとGoogle Apps Script(GAS)を組み合わせて、ブラウザから直接LINEへメッセージを送信する方法を紹介します。これにより、ウェブページ上のテキストを簡単に共有できるようになります。

必要なもの

  • LINEアカウント
  • LINE Notifyのアクセストークン
  • Googleアカウント

ステップ1: LINE Notifyの設定

  1. LINE Notifyの公式ページ(https://notify-bot.line.me/ja/)にアクセスし、LINEアカウントでログインします。
  2. 「マイページ」に移動し、「トークンの発行」を選択します。
  3. 通知を送りたいLINEグループを選択し、トークンを生成します。
  4. 生成されたアクセストークンをメモします。

ステップ2: Google Apps Scriptの設定

  1. Google Apps Scriptのウェブサイト(https://script.google.com/)にアクセスし、「新しいプロジェクト」を開始します。
  2. 以下のスクリプトをエディタに貼り付けます。"YOUR_LINE_NOTIFY_ACCESS_TOKEN"の部分は、ステップ1で生成したアクセストークンに置き換えてください。
function doPost(e) {
  var token = "YOUR_LINE_NOTIFY_ACCESS_TOKEN"; // 実際のアクセストークンに置き換えてください
  if (!e || !e.parameter || !e.parameter.text) {
    return ContentService.createTextOutput("リクエストパラメータが不足しています。");
  }
  
  var text = e.parameter.text; // メッセージに改行を含める場合はここを調整
  
  var options = {
    "method" : "post",
    "headers" : {"Authorization" : "Bearer " + token},
    "payload" : "message=" + text
  };
  UrlFetchApp.fetch("https://notify-api.line.me/api/notify", options);
  return ContentService.createTextOutput("メッセージを送信しました。");
}
  1. 「ファイル」>「プロジェクトのプロパティ」でプロジェクトの設定を行い、「公開」>「ウェブアプリケーションとして導入」を選択します。
  2. 「次のユーザーとして実行:」で「自分」を選び、「アクセスできるユーザー」で「全員(匿名を含む)」を選択してデプロイします。
  3. 表示されるURL(ウェブアプリケーションのURL)をメモします。

ステップ3: ブックマークレットの作成と使い方

  1. 以下のJavaScriptコードをブラウザのブックマークバーに新しいブックマークとして追加します。'YOUR_WEB_APP_URL'はステップ2で取得したウェブアプリケーションのURLに置き換えてください。
javascript:(function(){  
    var text = prompt("送信するテキストをペーストしてください:");  
    if (text) {    
        var url = 'YOUR_WEB_APP_URL'; // GASのウェブアプリケーションのURLに置き換えてください    
        fetch(url, {      
            method: 'POST',      
            headers: {        
                'Content-Type': 'application/x-www-form-urlencoded',      
            },      
            body: `text=${encodeURIComponent(text)}`    
        })    
        .then(response => response.text())    
        .then(result => alert("送信しました!"))    
        .catch(error => alert("エラーが発生しました: " + error));  
    }
})();
  1. 使用したいウェブページでテキストをコピーし、ブックマークレットをクリックして表示されるプロンプトにテキストをペーストし、送信します。

  2. LINE Notifyを通じて、設定したLINEグループや友達にメッセージが送信されます。

注意点

  • 公共のコンピューターでは使用しないでください。
  • ブラウザのセキュリティポリシーによっては、期待通りに動作しない場合があります。

注意: Microsoft Edgeでの使用と特定のサイトでのエラー

このガイドで紹介した方法は、幅広いブラウザで利用可能ですが、Microsoft Edgeでの使用には注意が必要です。 また、特定のウェブサイトでは、ブラウザのセキュリティ設定により「TypeError: Failed to fetch」というエラーが発生することがあります。

Microsoft Edgeでの使用上の問題

Microsoft Edgeでは、Content Security Policy (CSP) やその他のセキュリティ機能が原因で、ブックマークレットからの外部リソースへのリクエストがブロックされることがあります。これにより、Google Apps Scriptウェブアプリケーションへのリクエスト送信時に、「Failed to fetch」というエラーが発生する場合があります。

解決策

Edgeでこの問題に直面した場合、Google Chrome、Firefox、Braveなどの他のブラウザを利用することをお勧めします。 これらのブラウザでは、同様のセキュリティポリシーが適用される場合がありますが、Edgeで報告されているような問題に遭遇する可能性は低いです。

特定のサイトでのエラー発生

「TypeError: Failed to fetch」というエラーは、CSPやCORS(Cross-Origin Resource Sharing)ポリシーによって、外部リソースへのリクエストが制限されることによっても発生します。このため、セキュリティポリシーが厳格に適用されているサイトでは、ブックマークレットが期待通りに動作しないことがあります。

エラー回避のための対応

  • セキュリティ設定が緩和されているサイトでブックマークレットを使用する。
  • 情報を共有したいテキストがある場合は、テキストをコピーして、別のタブやウィンドウでブックマークレットを使用する。

まとめ

LINE NotifyとGoogle Apps Scriptを利用したウェブからLINEへの情報共有方法は、多くのブラウザで有効ですが、Microsoft Edgeや特定のセキュリティポリシーが厳しいサイトでは問題が発生する可能性があります。これらの制限を理解し、適切なブラウザやサイトでこの方法を利用することで、スムーズに情報共有を行うことができます。


モバイルでの使用感

  1. 登録したブックマークレットを使う (綴り間違った、恥ずかし

ここでは、copy&Pasta となってるやつです。

  1. Lineに送信したい文字を入力する枠が出てくる

なんかWEBでコピーしたの貼り付けるとか、WEBリンクとかいろいろできる

  1. 記入

  1. 送信

  1. LINE


こんな感じ


コメント
いいね
投げ銭
最新順
人気順
SHOGAKU
5ヶ月前
コメント
いいね
投げ銭
最新順
人気順
トピック
アプリ

Astar Network

DFINITY / ICP

NFT

DAO

DeFi

L2

メタバース

BCG

仮想通貨 / クリプト

ブロックチェーン別

プロジェクト

目次
Tweet
ログイン