如何从HttpResponseMessage获取参数
问题描述:
我在付款网关URL上发布了4个参数,作为响应,服务器发回名为auth_token & postBackURL的参数。如何从HttpResponseMessage获取参数
我没有下架的是如何得到这些参数在ASP.NET MVC respose(AUTH_TOKEN &一项PostBackUrl)????
以下是我的代码。
var client = new HttpClient();
var values = new List<KeyValuePair<string, string>>();
values.Add(new KeyValuePair<string, string>("storeId", "1234"));
values.Add(new KeyValuePair<string, string>("amount", "1000"));
values.Add(new KeyValuePair<string, string>("postBackURL","http://www.smmotors.org"));
values.Add(new KeyValuePair<string, string>("orderRefNum", "1101"));
var content = new FormUrlEncodedContent(values);
HttpResponseMessage response = client.PostAsync("https://easypaystg.easypaisa.com.pk/easypay/Index.jsf", content).Result;
下面是插件集成文档。
商家需要以下参数后置到Easypay以下网址:
沙箱环境: https://easypaystg.easypaisa.com.pk/easypay/Index.jsf
量 STOREID 一项PostBackUrl orderRefNum
后成功重定向客户将登陆Easypay结账屏幕,在该屏幕上有关于交易信息的表格。
- 完成步骤1中的表单后,客户将按下继续按钮,然后返回到商户网站上的第一步中postbackURL变量中给出的相同URL。这将是商家网站上的确认屏幕,用于执行Easypay和商家网站之间的握手。 Easypay发回一个名为auth_token的参数给postbackURL,它作为GET参数发送。现在商家需要寄回以下两个参数再次到以下网址:
沙箱环境: https://easypaystg.easypaisa.com.pk/easypay/Confirm.jsf
AUTH_TOKEN 一项PostBackUrl
这种重定向后,Easypay认证通过发送AUTH_TOKEN商家使用上一步中的商品,并且在成功验证后,它将使客户在成功结账屏幕上返回以下两个变量后返回到第二个postBackURL:
状态 递减 orderRefNumber
答
你可以使用这样得到响应密钥
public ActionResult AdvPaymentResponse()
{
List<PaypalAddDataValueModel> keyvalueList = new List<PaypalAddDataValueModel>();
var postdata = System.Web.HttpContext.Current.Request.Form;
foreach (var item in postdata)
{
PaypalAddDataValueModel datavalue = new PaypalAddDataValueModel();
datavalue.Key = item.ToString();
datavalue.Value = System.Web.HttpContext.Current.Request.Form[item.ToString()];
keyvalueList.Add(datavalue);
// var data = System.Web.HttpContext.Current.Request.Form[item.ToString()];
}
AdvPaypalResponse obj = new AdvPaypalResponse();
obj.AVSZIP = keyvalueList[0].Value;
obj.BILLTOEMAIL = keyvalueList[1].Value;
obj.TYPE = keyvalueList[2].Value;
obj.ZIPTOSHIP = keyvalueList[3].Value;
obj.BILLTOLASTNAME = keyvalueList[4].Value;
obj.BILLTONAME = keyvalueList[5].Value;
}
对不起,我不能下架,可以请您给我的代码示例。 –