2017-11-08 10 views
0

私は、ユーザによって提出するフィードバックフォームを持っているのWebViewでのNode.jsejsファイルの代わりに.jsファイルからMessengerExtensions.requestCloseBrowserを呼び出す方法は?

を使用していたれるチャットボットに取り組んでいます。

feeback.ejsにmessenger extensions sdkを追加しました。次のように:

<script> 
     (function(d, s, id){ 
      var js, fjs = d.getElementsByTagName(s)[0]; 
      if (d.getElementById(id)) {return;} 
      js = d.createElement(s); js.id = id; 
      js.src = "//connect.facebook.com/en_US/messenger.Extensions.js"; 
      fjs.parentNode.insertBefore(js, fjs); 
     }(document, 'script', 'Messenger')); 

     window.extAsyncInit = function() { 
      // the Messenger Extensions JS SDK is done loading 
      var isSupported = MessengerExtensions.isInExtension(); 

      MessengerExtensions.getContext('************', 
       function success(result){ 

       document.getElementById("psidid").value = result.psid; 
       }, 
       function error(result){ 
       //alert("json str "+JSON.stringify(result)); 
       } 
      ) 

     }; 


    </script> 

私はpsidも取得できます。ポストアクションのフィードバックフォームでは、jsファイルで関数を呼び出しています。

例:

<form method="post" action="/feeback/submit"> 

    <table cellpadding="11"> 

     <tr> 
     <td class="label">First Name</td><td>: <input type="text" name="fname" required></td> 
     </tr> 
     <tr> 
     <td class="label">Last Name</td><td>: <input type="text" name="lname" required></td> 
     </tr> 
    </table> 
    </form> 

ファイルapp.js:私は保存しています機能で

app.post('/feeback/submit', feedback.submit); 

を私はfeedback.jsファイル内の関数を呼び出して提出していますフォームデータをユーザーと私は正常にデータを保存するにもwebviewを閉じることができる必要があります。

どうすれば達成できますか?

私は以下のメソッドを使用しますが、私はMessengerExtensionsを取得していますが、NPT定義のエラーです:

MessengerExtensions.requestCloseBrowser(function success() { 
    // webview closed 
    user.doDataResponse(psid, message); 
}, function error(err) { 
    // an error occurred 
}); 

は助けに感謝します...!

答えて

0

Messenger拡張機能は、クライアント側のSDKです。サーバーサイドのコードから呼び出すことはできません。

送信側イベントが発生したときにクライアント側で呼び出すことができます。フォームを送信する代わりにXHRでフォームを実装してから、/feeback/submitから応答が返ってくると呼び出すことができます。

+0

ありがとう、それを試してみましょう。 –

関連する問題