2013-03-07 10 views
24

Sto tentando di aggiungere lo script http-post-say.coffee a un'app di hubot ospitata su Heroku.Aggiungi supporto post a Hubot

La documentazione indica che una volta aggiunto lo script, viene creata la route '/hubot/say' che accetta richieste di post nel seguente formato.

curl -X POST http://localhost:8080/hubot/say -d message=lala -d room='#dev'

ho aggiunto la sceneggiatura e modificato l'url ma ho ricevuto il seguente errore: Cannot POST /hubot/say

Il passo successivo è stato quello di aggiungere alcune dipendenze. Ho notato che altre app che utilizzavano robot.router.post avevano queste dipendenze.

"htmlparser": "1.7.6", "connect": "2.3.4", "connect_router": "1.8.6", "scoped-http-client": "0.9.7"

ho schierato i miei cambiamenti, ma io continuo a ricevere Cannot POST /hubot/say quando cerco di colpire quel percorso.

C'è qualcosa che mi manca? Non ho molta familiarità con node.js o hubot.

+0

quale cartella si fa ad aggiungere a? 'Scripts'? – Outsider

+1

Cosa dicono i registri? – maletor

+0

risolto? ho provato il tuo script, funziona bene http: // localhost: 8080/hubot/say? message = lala & room = # dev –

risposta

1

Per caricare uno script incorporato in Hubot, è necessario aggiungerlo al hubot-scripts.json, ad esempio:

["http-post-say.coffee"] 

(Dal momento che lo script stesso guarda bene e suona come hai spinto a Heroku (Hubot riavvio) è l'unica cosa che posso pensare che spiegherebbe che non funziona.)

1

Devi capire che una volta che hai spinto il tuo codice su heroku e fallo funzionare lì, l'URL non sarebbe più localhost ma l'effettivo heroku URL relativo alla macchina che è stata creata quando hai fatto heroku create.

L'URL dovrebbe essere simile:

curl -X POST `http://herokumachinename/hubot/say -d message=lala -d room='#dev'`