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

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

ただいまの
回答率

90.61%

  • JavaScript

    15924questions

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

  • CSS

    5586questions

    CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

  • Node.js

    1796questions

    Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

  • Heroku

    824questions

    HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

  • Hubot

    25questions

    HubotはGitHub社が開発したチャットbotのフレームワークです。

HerokuでHbubotを使いWebページを公開したい

受付中

回答 0

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 405

genki0301ab

score 6

タイトルの通り、Hrokuというサービスを利用してBotのプログラムと同時にhttpのリクエストを受け付けてnodeのプログラムで動作するWebページを制作したいなと考えております。

hubotが持っているexpressの機能を使いroutingの処理をしてみたりしているのですが、css、javascriptがどうしてもサイト上に反映されなくて困っております。

node該当コード

(function() {
/*
====================
■ Bot
====================
*/
function Bot(object) {
  //class
  this.originalDate = object.originalDate;
  this.slack = object.slack;
  this.weather = object.weather;
  this.httpServer = object.httpServer;
  //method
  this.init();
  console.log("bot running!!");
}
Bot.prototype.init = function() { //init
  var self = this;
  module.exports = function(robot) {
    //yo
    //self.yo(robot);
    //weather
    //self.weather.getWeather(robot, 270000);
    //httpSever
    self.httpServer.routing(robot);
  };
};
Bot.prototype.yo = function(robot) { //yo
  var self = this;
  robot.messageRoom(this.slack.room, "♪(σ´ω`)σ\tyo!!\n今日は" +  this.originalDate.getDate_All() + "だ\tyo!!");
};

/*
====================
■ HTTPSever
====================
*/
function HttpServer(object) {
  //class
  this.originalDate = object.originalDate;
  this.slack = object.slack;
  this.weather = object.weather;
}
HttpServer.prototype.routing = function(robot) { //routing
  var self = this;
  robot.router.get("/", function(err, res, body) {
    robot.messageRoom(self.slack.room, "♪(σ´ω`)σ\tyo!!\nサイトに訪問者がいる\tyo!!\nお茶出せ\tyo!!\n" + self.originalDate.getTime_All() + "だ\tyo!!");
    robot.router.set("view engine", "ejs");
    res.render("index");
  });
  //sheard(css)
  robot.router.get("/sheard/css/reset.css", function(err, res, body) {
    res.type("css");
    res.send();
    res.end();
  });
  robot.router.get("/sheard/css/common.css", function(err, res, body) {
    res.type("css");
    res.send();
    res.end();
  });
  //sheard(js)
  robot.router.get("/sheard/js/lib/jquery-1.11.3.min.js", function(err, res, body) {
    res.type("javascript");
    res.send();
    res.end();
  });
  robot.router.get("/sheard/js/lib/jquery.easing.1.3.js", function(err, res, body) {
    res.type("javascript");
    res.send();
    res.end();
  });
  robot.router.get("/sheard/js/lib/velocity.min.js", function(err, res, body) {
    res.type("javascript");
    res.send();
    res.end();
  });
  robot.router.get("/sheard/js/lib/TweenMax.min.js", function(err, res, body) {
    res.type("javascript");
    res.send();
    res.end();
  });
  robot.router.get("/sheard/js/lib/three.min.js", function(err, res, body) {
    res.type("javascript");
    res.send();
    res.end();
  });
  robot.router.get("/sheard/js/lincle.js", function(err, res, body) {
    res.type("javascript");
    res.send();
    res.end();
  });
};

ejsコード

<%
pageSetting = {
    siteTitle: "aaa",
    pageTitle: "",
    description: "",
    css: "",
    js: ""
} ;
%>
<%- include("sheard/inc/_header") %>
<div class="wrapper">
</div>
<%- include("sheard/inc/_footer") %>

フォルダ構成
![イメージ説明](94a4b2144d945c90c1928eefba92e2c1.jpeg)

よろしくお願いいたします。

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

まだ回答がついていません

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

  • ただいまの回答率 90.61%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • JavaScript

    15924questions

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

  • CSS

    5586questions

    CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

  • Node.js

    1796questions

    Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

  • Heroku

    824questions

    HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

  • Hubot

    25questions

    HubotはGitHub社が開発したチャットbotのフレームワークです。