2016-07-08 14 views
0

端末で実行されたときにBashコードが正常に実行されますが、jsファイルから実行するとうまく動作します。誰かが説明できる場合Bashコーディングエラー

!/bin/sh 

curl -X POST \ 
    --data-urlencode 'payload={"text": "This is Dash.", "channel": "#water-cooler", "username": "MrBot", "icon_emoji": ":neckbeard:"}' \ 
    https://hooks.slack.com/services/############################# 

すると、それは素晴らしいことだ:

[email protected]:~/node_modules/Chris# sudo node index.js 
/home/chris/node_modules/bat.sh:2 
curl -X POST \ 
     ^^^^ 
SyntaxError: Unexpected identifier 

トリガーのコードが

var config = require('./config'); 
var dash_button = require('node-dash-button'); 

var dash = dash_button(config.dash.MAC_address); 

dash.on('detected', function(){ 
var spawn = require('bat.sh').spawn; 

}); 

コードです:それは私に、次のエラーが発生します。

+0

これはJavaと何が関係していますか? –

+0

@ScaryWombat使用されているプログラミング言語には、同様の名前が付けられています。私はタグを削除しました –

答えて

1

require node.jsのシェルスクリプトできません。

https://nodejs.org/api/child_process.htmlは、別のプログラムの実行方法を示します。

Node.jsは外部プログラムなしでHTTPリクエストを行うことができます。この例では、requestライブラリを使用しています。

var request = require('request'); 
request.post('https://hooks.slack.com/services/#############################', 
    {form: {payload:'{"text": "This is Dash.", "channel": "#water-cooler", "username": "MrBot", "icon_emoji": ":neckbeard:"}'}}, 
    function (error, response, body) { 
     //do something 
    }); 
+0

うまくいかなかった。あなたはそれを別の方法で開始するためのブロックを私に与えることができますか? – ImAboveAverage

関連する問題