2016-03-21 20 views
2

JavaベースのWeb-App で支払いゲートウェイを統合しました。成功したトランザクションと失敗したトランザクションの後、 PGはそれに応じてそれぞれHTMLページfailure.html、success.htmlフォームデータを使用します。 このデータはどのように読んで使用できますか? 私は手がかりがない、助けが必要です。JS/Jqueryを使用してポストパラメータを読み取る方法

General 
    Request URL:http://www.educationxpress.in/failure.html 
    Request Method:POST 
    Status Code:200 OK 
    Remote Address:43.242.215.132:80 
    Response Headers 
    view source 
    Accept-Ranges:bytes 
    Connection:Keep-Alive 
    Content-Encoding:gzip 
    Content-Length:2461 
    Content-Type:text/html 
    Date:Mon, 21 Mar 2016 11:44:23 GMT 
    ETag:W/"7124-1458556448000" 
    Last-Modified:Mon, 21 Mar 2016 10:34:08 GMT 
    Server:Apache-Coyote/1.1 
    Vary:Accept-Encoding 
    Request Headers 
    view source 
    Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.  8 
    Accept-Encoding:gzip, deflate 
    Accept-Language:en-US,en;q=0.8 
    Cache-Control:max-age=0 
    Connection:keep-alive 
    Content-Length:1087 
    Content-Type:application/x-www-form-urlencoded 
    Host:www.xywevbsite.in 
    Origin:null 
    Upgrade-Insecure-Requests:1 
    User-Agent:Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36 
    Form Data 
    view source 
    view URL encoded 
    mihpayid:550690310 
    mode:DC 
    status:failure 
    unmappedstatus:failed 

    txnid:f63fdb227b24393099dc 
    amount:45.0 
    addedon:2016-03-21 17:12:37 
    productinfo:Rabbit 
    firstname:Mohit 

このレスポンスを読むにはヘルプが必要ですか?

+0

あなたはajaxを使用していますか? – madalinivascu

+0

@madalinivascu - 支払いゲートウェイは、一般的にAjaxをサポートしていません。問題は、 'failure.html'などで動作するコードについて質問する必要があります。 – Quentin

+0

@mohit sharma、あなたはすべての回答をdownvotingしていますか? – campsjos

答えて

0

クライアントサイドコードは、クライアント側コードが実行されているページをロードするために使用されたリクエスト内のほとんどのデータ(POSTデータを含む)にアクセスできません。

代わりにサーバー側のコードを使用する必要があります。

+0

私はJavaを使用していますので、どうすればこのデータをサーブレットに取得できますか。 サーブレットにリクエストを送信する方法 –

+0

@mohitsharma - 支払いプロバイダが既にデータをサーバに送信しています。あなたが使用しているURLがサーブレットによって処理されていることを確認し、他のフォーム送信と同様にデータを処理するだけで十分です。これはサーブレット101です(Javaをサーバーサイドプログラミング言語として使用する必要性を感じたことのない私の経験外)。 – Quentin

-2

あなたは、クライアント側でPOSTデータを読み取ることはできませんが、localStorageを使用してフォームを送信するときに、それをローカルに保存することができます:

<form onSubmit="formSubmitted()"> 
    <input type="text" id="firstname" name="firstname" /> 
    ... 
</form> 
<script type="text/javascript> 
    function formSubmitted() { 
     localStorage.setItem('firstname', document.getElementById('firstname').value); 
    } 
</script> 

また、あなたはそれを得るために任意のサーバー側の言語を使用することができます。

var firstname = "<?php echo $_POST['firstname']; ?>"; 
+0

データが支払いプロバイダから送信されています。支払いプロバイダのページにJavaScriptを追加することはできません。 – Quentin

+0

はい、そうです。それを行う唯一の方法は、サーバーサイドのコード言語を使用することです。通常、支払いプロバイダはユーザーに応答URLを設定させるので、 'failure.html'から' failure.php'(例えば) – campsjos

+0

@campsjosにリダイレクトを変更する必要があります。ちょうど私が知りたいと思っていただけです... 私はちょうどサーバーのサイドコードを試してみます –

関連する問題