2016-09-22 6 views
1

完全に困惑_crypto宣言されていない変数への代入。私はヘルパーファイルをインポートするReact Appを持っています。そのヘルパーファイルは、今、以下の(と、ファイルが正しく読み込まれている)が含まれます。のWebPACK /暗号-Browserifyリファレンスエラー:

var accountSid = '<secret_id>'; 
var authToken = '<secret_token>'; 
var client = require('twilio')(accountSid, authToken); 

私はこのエラーを取得する:「参照エラー:_crypto宣言されていない変数への代入」

は、ソースマップは、私を取りますこのコードブロックへのWebPACKがまとめた 'bundle.js' で:

/* 262 */ 
/***/ function(module, exports, __webpack_require__) { 

    /* WEBPACK VAR INJECTION */(function(global, Buffer) {'use strict'; 

    (function() { 
     var g = ('undefined' === typeof window ? global : window) || {}; 
     _crypto = g.crypto || g.msCrypto || __webpack_require__(263); 
     module.exports = function (size) { 
     // Modern Browsers 
     if (_crypto.getRandomValues) { 
      var bytes = new Buffer(size); //in browserify, this is an extended Uint8Array 
      /* This will not work in older browsers. 
      * See https://developer.mozilla.org/en-US/docs/Web/API/window.crypto.getRandomValues 
      */ 

      _crypto.getRandomValues(bytes); 
      return bytes; 
     } else if (_crypto.randomBytes) { 
      return _crypto.randomBytes(size); 
     } else throw new Error('secure random number generation not supported by this browser\n' + 'use chrome, FireFox or Internet Explorer 11'); 
     }; 
    })(); 
    /* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }()), __webpack_require__(257).Buffer)) 

/***/ }, 

機能は、〜/ 'rng.js' 内側「(WebPACKの)>〜/ノード-libsのブラウザと呼ばれるファイルから来ています> crypto-browserify ' 私がtwilioインスタンス化のコメントをコメントアウトするときd、エラーは消えます。 twilioモジュールの使用を開始するまでは表示されませんでした。

誰もが前にこれを見たか、私はそれを修正することができる方法についての提案がありますか? Thnx。

+1

、[ 'twilio'](https://github.com/twilio/twilio-node)ブラウザで使用することはできません。 – cartant

答えて

1

ここではTwilioの開発者のエバンジェリストです。

ブラウザでTwilio Node moduleを使用しようとしているようです。これはサポートされておらず、非常に推奨されていません。 1つの理由:

フロントエンドにアカウントの資格情報を記載すると、悪意のあるユーザーがTwilioアカウントに対して盗んで使用して、電話をかけたい相手やSMSに全額を費やすことができます。

私たちは、あなたがサーバー上TwilioにあなたのAPIの呼び出しを行うと、あなたはダイナミックなフロントエンドを作成する必要がある場合のAjaxでリクエストを送信することをお勧めします。ほとんどの場合

+0

TwilioやサードパーティのAPIを使ってReactアプリを開発する方法についてのチュートリアルを見たい人がいます。 WebpackでReact Appを実行するためのリソースはたくさんあります。しかし、サーバーコールを行うことができる実際の開発環境で実行するためのものではありません。おすすめは歓迎!! – mepler

+0

これに関するいくつかのブログ記事があります。特にこれは役に立ちます:https://www.twilio.com/blog/2015/11/reactjs-tutorial-call-monitoring-with-react-express- and-socket-io.htmlを参照してください。私たちはおそらくそれについてもっと書いているので、ブログを見てください! – philnash

関連する問題