2013-02-21 2 views
0

Я пытаюсь получить что-то очень простое в работе с node.js и в какой-то момент застрял. Надеясь, что кто-то может помочь мне с этой проблемой .. Я пытаюсь очень простое приложение node.js. В основном существует файл index.html, который имеет форму с именем в качестве параметра. Onclick кнопки вызывает сценарий JQuery, который выполняет POST-запрос к скрипту node.js с значением NAME, полученным из html-формы. Теперь почтовый запрос выполняется с помощью скрипта node.js, который запускает HTTP-сервер на своем порту по умолчанию. Все это узел. js script does принимает параметр и отвечает очень тривиальным ответом, который включает в себя параметр POST, который был отправлен. Этот ответ улавливается JQuery и предоставляется пользователю с использованием предупреждения .. Итак, у меня есть index.html и логин. js как мои два скрипта .. Теперь я использую heroku для размещения этих файлов .. Проблема в том, что они загружены, он действительно не открывает файл html по умолчанию .. он запускает login.js по умолчанию .. Так что HTML никогда не Открыто .. Вероятно, у меня есть procfile, который загружается s login.js к dyno .. Но если я удалю procfile, то я получаю ошибку в журналах, говорящих «Нет веб-процессов». Итак, в основном, длинный рассказ, есть способ иметь index.html и node.js файл работает на том же экземпляре Heroku, где HTML просит Node.js для информации и возвращает его обратно .. Вот ссылки на мой HTML и Node.js скриптыhtml и node.js скрипт на том же экземпляре heroku

https://dl.dropbox.com/u/904687/index.html https://dl.dropbox.com/u/904687/login.js

+0

не игнорировать 'node_modules /' или 'bower_components в .gitignore 'при развертывании на героку –

ответ

1

Одним из вариантов является использование Node.js Express.js для работы с html-файлом, а также обработка маршрута входа.

Все это будет выглядеть примерно так.

файл: package.json

{ 
    "name" : "LoginPage", 
    "version" : "0.0.1", 
    "dependencies" : { 
    "express" : "3.x" 
    }, 
    "main" : "index.js" 
} 

файл: index.js

var express = require('express'); 
var app = express(); 

var oneDay = 86400000; 

app.use(express.compress()); 

app.use(express.static(__dirname + '/public', { maxAge: oneDay })); 

app.use(express.bodyParser()); 

app.listen(process.env.PORT); 

app.post('/', function(req, res){ 
    var result = req.rawBody; 
    res.send("hello there world data is " + result); 
}); 

структуры каталогов

package.json 
index.js 
public 
    index.html 
Смежные вопросы