2013-01-12 8 views
5

私はnode.jsを学ぼうとしています。私は単純なnode.js web apiとhtml-javascriptフロントエンドを作成しようとしています。これはFacebookの認証を使ってログインし、FacebookのidをMongodbに保存します。Node.jsの構文エラー「予期しないトークン」が「エクスポート」にあります。

私はオンラインで入手できるチュートリアルでこれを行うことができました。

ここでは、コードを複数のファイルに分けたいと思いますが、ルート "ユーザー"を作成してエクスポートを介して機能を公開しようとしています。次のエラーが表示されます。

module.exports.userLogin = function(req,res){ 
    ^SyntaxError: Unexpected token . 
    at Module._compile (module.js:437:25) 
    at Object.Module._extensions..js (module.js:467:10) 
    at Module.load (module.js:356:32) 
    at Function.Module._load (module.js:312:12) 
    at Module.require (module.js:362:17) 
    at require (module.js:378:17) 
    at Object.<anonymous> (C:\Users\Saumya\Desktop\vhsharedraft\web.js:2:6) 
    at Module._compile (module.js:449:26) 
    at Object.Module._extensions..js (module.js:467:10) 
    at Module.load (module.js:356:32) 

ありがとうございます。

EDIT#1

module.exports.userLogin = function(req,res){ 
    graph.setAccessToken(req.session.fb.access_token); 

    graph.get("/me", function(err, data) { 
     if(err){ 
      console.log('Error obtaining data.'); 
      return; 
     } 
     console.log(data); 
    } 

} 

EDIT#2

var mongo = require('mongodb'), 
graph = require('fbgraph'); 



exports.userLogin = function(req,res){ 
    graph.setAccessToken(req.session.fb.access_token); 

    graph.get("/me", function(err, data) { 
     if(err){ 
      console.log('Error obtaining data.'); 
      return; 
     } 
     console.log(data); 
    } 
} 

これは、私は、ユーザーのルートを持っているすべてです。 実際、私は本当のばかげた間違いをしていましたが、私はセミコロンの代わりにgraph = require('fbgraph')の前にコンマを置きました。 この構文エラーを修正した後、このエラーが発生します。

} 
^ 
SyntaxError: Unexpected token } 
    at Module._compile (module.js:437:25) 
    at Object.Module._extensions..js (module.js:467:10) 
    at Module.load (module.js:356:32) 
    at Function.Module._load (module.js:312:12) 
    at Module.require (module.js:362:17) 
    at require (module.js:378:17) 
    at Object.<anonymous> (C:\Users\Saumya\Desktop\vhsharedraft\web.js:2:6) 
    at Module._compile (module.js:449:26) 
    at Object.Module._extensions..js (module.js:467:10) 
    at Module.load (module.js:356:32) 

ありがとうございました。

+0

module.exports.userLoginの使用します){} '、私はそこから始めたいと思います。私がコードの残りの部分を見ることができれば、どこが失敗しているのか分かりやすくなるかもしれません。 –

+0

「エクスポート」ではなく「module.exports」を参照している場合。後者も同じエラーで試しました。 –

+0

これは私が初心者なので、本当にばかげたミスかもしれません。 「輸出」を使用するために何かを「必要とする」必要がありますか? –

答えて

11

あなたがここにタイプミスがあります

graph.get("/me", function(err, data) { 
    if(err){ 
     console.log('Error obtaining data.'); 
     return; 
    } 
    console.log(data); 
} 

は、それは次のようになります。

graph.get("/me", function(err, data) { 
    if(err){ 
     console.log('Error obtaining data.'); 
     return; 
    } 
    console.log(data); 
}); /* Note the added parenthesis here */ 

また、あなただけの( `exports.funcName =機能を実行する必要がありexports.userLogin代わりに通常

+3

明示的に別の部分を表示できますか?それとも大胆にする? 2つの例で異なる部分を探しているLinekを通して読むのは非常に難しいです –

関連する問題