如何在angularJS中接受来自支付网关服务器的http发布数据



支付网关请求包含许多参数以及ReturnURL、

根据支付情况,无论成功与否,来自支付网关的状态代码和错误代码等都会通过ReturnURL、发布

当这个公布的数据被检索到网络API控制器,然后它给我的结果,

代码段:(这是一个示例代码,而不是完整的代码)

public async Task<HttpResponseMessage> PGResponse()
        {
            string strPGResponse = HttpContext.Current.Request.Form["msg"];
            string strMerchantCode = HttpContext.Current.Request.Form["tpsl_mrct_cd"];
            return Response(HttpStatusCode.OK);
        }

但当我试图从支付网关获得这些发布的数据时,我不确定如何实现相同的

你们们可以在下面的链接中参考那个并没有答案的问题。AngularJs:响应来自第三方服务器的Http帖子

所以请在同样的问题上提供帮助。

提前感谢。。。

编辑--------------------

1) 我会打电话给submitCart(id,total,returnURL,currentURL)来自angularJS。

2) 此调用到达web api中的此方法公共异步任务SubmitArt(长id、长总计、字符串returnurl、字符串currenturl)

3) 之后,在上述方法和浏览器中提出的支付请求重定向到支付网关页面。

4) 在向网关提供卡id、银行名称等信息后,根据请求,网关会给我一个张贴的表格数据通过使用ReturnURL。像

http://localhost:3321/Cart/PGResponse

5) 我会用这种方法得到这些响应

public async Task<HttpResponseMessage> PGResponse()
    {
        string strPGResponse = HttpContext.Current.Request.Form["msg"];
        string strMerchantCode = HttpContext.Current.Request.Form["tpsl_mrct_cd"];

        List<Cart> CartList = await _cartService.GetByUserBasicID(Convert.ToInt64(custid));
        return Response(HttpStatusCode.OK, CartList);  // This is my private function
    }

6) 我会成功地从网关获得响应,我想向用户显示网关响应消息以及它的购物车数据,比如CartList。那么我如何显示带有网关响应和购物车数据的感谢页面。。在我棱角分明的应用程序中。

不要将API的url作为重定向url传递。因为API只能返回数据,而不能返回应用程序。

因此,我建议您创建一个MVC控制器而不是API控制器来接收来自支付网关的数据。

public ActionResult PGResponse()
{
        string strPGResponse = HttpContext.Current.Request.Form["msg"];
        string strMerchantCode = HttpContext.Current.Request.Form["tpsl_mrct_cd"];

        List<Cart> CartList = await _cartService.GetByUserBasicID(Convert.ToInt64(custid));
        if(success){
             return View("success.html");
        }
        return View("failed.html");  // return your angular application page.
}

CCD_ 1和CCD_ 2是用于显示支付状态的页面。

您仍然没有回到您的角度应用程序

用户应该从状态页面重定向到您的角度应用程序。您可以编写一个简单的jquery代码,在一分钟或一段时间后重定向到您的应用程序。

希望这对你有帮助。

对此,请随时提出任何疑问。

最新更新