アフィリエイター上岡の日記です。管理人LINEアカウントでログインするテストを動かしてみた(HerokuにPHPで)TwitterFacebookはてブLINEPocketLINEアカウントでログインを実現したい。そのためのプロトタイプ的なことをやってみました。環境としてはHerokuにPHPをデプロイしました。上の記事を参考にさせていただきました。1年半近く前の情報なので、LINE側の画面レイアウトなんかが違ったりしてます。内容としては丸ッとそのまま使えました。先駆者の存在は本当にありがたいです。Secret」の2つ。こちらは任意で編集できます。ログインの入り口になるindex.htmlを書くボタンだけがポツンと置かれたHTMLです。リンクは「あなたのチャンネルID」という部分と、「redirect_uri=」の後のURLを変更してください。ログインボタンをクリックした後の挙動を実装するcallback.phpにログインボタンクリック後の処理を記述します。いっても、参考記事に書かれていた内容をコピペしたものです。Secret」を入れます。app」ボタンをクリック。HerokuでPHPが使えるようにビルドパックをセットするアプリ管理画面でSettingsをクリックします。buildpack」ボタンをクリック。みんな大好き「PHP」をクリック。これでPHPが使えるようになりました。Gitでコミットからデプロイまで先ほど作った「index.html」「callback.php」と画像が入った「img」フォルダを配置したフォルダです。コマンドプロンプトで、上記のフォルダに移動します。init」でgit初期化処理をします。該当フォルダ内に「.git」フォルダができていれば成功です。アプリ名」とコマンドを打ちます。push」できるようになります。status」コマンドで、コミット対象となっているファイル一覧を見ます。すべて赤くなっているので、対象ですね。.」で現在のフォルダのすべてのファイルをコミット直前のステージング段階にします。status」コマンドを打つと、全て緑色になっています。これらのファイルをコミットできる状態です。commit」でコミットをします。コミット時のメッセージの編集画面です。操作は「Vi」というエディタと同じ。log」でコミットログを見ると、先ほどコミットした内容が確認できます。コミット日時も記録されるので、開発が進んだ時に振り返るときなんかに便利です。Herokuにデプロイです。master」とコマンドを打つだけでOKです。動作の確認なぜかHeroku上のindex.htmlにアクセスできなかったので、ローカルのindex.htmlを開きました。置かれたログインボタンをクリックします。SNS連携とかで見かける例の画面が来ました!「同意する」ボタンをクリック。すると、コールバックURLにリダイレクトされました。レスポンスが思ってたのと違うのですが、概ねやりたいことはできました。課題コールバックURLに飛んだ時、本来であれば同意したLINEアカウントの情報が表示されるはず。それが表示されなかったので原因の究明と解決をしなきゃです。他にもHeroku側でこんなエラーが出てました。PHPビルドパックにアプリケーションがうまく適合してないっぽいです。これについても原因の究明と解決をしなきゃです。こんな感じで転びながらも前進していけば、いずれ実装ができあがります。課題が解決しました!「もしかしたら・・・」と思いついたことを試してみたらうまくいきました!やったことはというと、「index.html」ファイルを「index.php」に拡張子を変更しただけです。↑中身はそのままにして、PHPファイルに変更(ファイル名を変更)しただけです。master」でデプロイします。すると、Herokuにアクセスするとちゃんとログインボタンが表示されました。認証した後のコールバック画面も、想定通りLINEからのレスポンスが表示できました。この戻って来たmidを識別子としてユーザー管理すればOKですね。うまくいっていなかった原因これは裏も取ってないし、完全に私の予想の範囲ですが、「Heroku上でPHPとhtmlが共存できないのかもなぁ」という印象です。実際、PHPに変えただけでうまくいっちゃいましたしね。時間のある時にしっかり裏をとらなきゃですが、今のところは動いたからOKとします。最後まで読んでいただき、ありがとうございます。コメントをキャンセルメールアドレスが公開されることはありません。コメントデータの処理方法の詳細はこちらをご覧ください。ポップアップがブロックされました:」というエラーが出た時の対処法!技術的なことHerokuLINEログインPHPHerokuにPHPファイルをアップして表示するまでオードリー若林が一日の終わりに見る「サイバージャパンダンサーズ」とは?RECOMMENDこちらの記事も人気です。まずい?」の真相を探るべく買ってみました。2020ラッシュガード選びの5つのポイント便利で役立つPerl好きな私🐪ランキング人気ブログランキングに参加しています。よろしければ、1日1回応援クリックをお願いします。