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

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

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

GmailとはGoogleによって提供されているウェブメールのサービスのことです。

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

Q&A

解決済

1回答

1131閲覧

Gmailの作成URLが、状況によってエラーになる

maisumakun

総合スコア145183

Gmail

GmailとはGoogleによって提供されているウェブメールのサービスのことです。

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

0グッド

1クリップ

投稿2018/05/02 00:53

前提・実現したいこと

HTML上からこちらにあるような形でGmailの作成URLへJavaScriptで飛ばしたのですが、以下の2条件を満たした場合に、Googleが500エラーとなってしまいます。

  • 生成したリンクがメールの本文まで含むなど、かなり長い(パーセントエンコード後に5kBytesほどになっていました)
  • Gmailを同じブラウザで事前なり並行してなりで開いていない

この問題を回避して、Gmailの本文や宛先などを指定したメール作成画面を表示したい(自動的にメールを送信したいわけではないです)のですが、どのようにすればいいでしょうか。

なお、

  • ベースとなるシステム自体がGoogleログインを前提としていますので、「Gmailが使えない」という状況は考えなくて構いません。
  • 「Gmailに頼らず、自力でメール作成画面まで作って送信を行う」という手段はもちろんありますが、できればGmailの作成機能にもっていきたいです。
  • ブラウザサイドのHTML、JavaScriptだけでなく、Google Apps ScriptやサーバサイドのRailsなどを動員するのもありです。

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

Google 500. That’s an error. There was an error. Please try again later. That’s all we know.

該当のソースコード

javascript

1open('https://mail.google.com/mail/?view=cm&to=foo@example.com&body=.....');

試したこと

  • URLに入れるパラメーターが短い場合は、問題なくメール生成が可能でした。

補足情報(FW/ツールのバージョンなど)

  • G Suite環境、通常のGoogleアカウントを問わず発生
  • ブラウザ:Chrome、Firefoxなどどれで試しても同じ状況に
  • サーバサイド:Rails 4.2

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

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

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

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

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

guest

回答1

0

ベストアンサー

Go で Gmail API を使って下書きを作るツールを作っている人がいます。

Gmail API for Goで、下書き生成ツールを作りました。

中を確認したわけではないので外しているかもしれませんが、画像を見る限り Gmail のメール作成画面に見えます。
JavaScript に移植可能ならこれでできるのではないでしょうか。

投稿2018/05/02 01:51

Zuishin

総合スコア28660

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

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

maisumakun

2018/05/02 02:03

Gmail APIで下書き作成まではできそうですが、それを「自動的にブラウザで開く」ことができるのかが、ちょっと問題になる、という感じです。
maisumakun

2018/05/07 01:56

試行錯誤中です。クローズまではお待ちいただければ幸いです。
maisumakun

2018/05/07 09:08

Gmail APIはRailsから呼び出して、URL参照と組み合わせることで、思っていた形にだいぶ近いものが出来上がりました。ありがとうございます。
Zuishin

2018/05/07 10:29

その後こちらでも調べていましたが時間が取れなくてお役に立てませんでした。すみません。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問