【问题标题】:Unsupported HTTP request method detected检测到不支持的 HTTP 请求方法
【发布时间】:2014-12-20 20:39:07
【问题描述】:

现在我正在使用 quickpay 向我的网站付款,当我尝试访问需要通知我付款的页面时,仅针对此错误:

Message Error Detected

An unrecoverable message error has been detected with the following information:

Unsupported HTTP request method detected - please use HTTP POST request

Please correct the problem and re-submit.

当我发送它以将信息发送到他们身边时,我是否喜欢这样:

HTML

<asp:HiddenField ID="protocol" runat="server" Value="" />
<asp:HiddenField ID="msgtype" runat="server"  />
<asp:HiddenField ID="merchant" runat="server" />
<asp:HiddenField ID="language" runat="server" />
<asp:HiddenField ID="ordernumber" runat="server" />
<asp:HiddenField ID="amount" runat="server" />
<asp:HiddenField ID="currency" runat="server" />
<asp:HiddenField ID="continueurl" runat="server" />
<asp:HiddenField ID="cancelurl" runat="server" />
<asp:HiddenField ID="callbackurl" runat="server" />
<asp:HiddenField ID="autocapture" runat="server" />
<asp:HiddenField ID="md5check" runat="server" />
<asp:Button ID="ButtonBuyNow" OnClick="ButtonBuyNow_Click" runat="server" CssClass="btn pi-btn-base pi-btn-wide pi-uppercase pi-weight-700 pi-letter-spacing" />

当你点击按钮时,我会这样做:

c#

protected void ButtonBuyNow_Click(object sender, EventArgs e)
{
    if(CheckBoxGodkend_Handelsbetingelser.Checked)
    {
        Response.Redirect("https://secure.quickpay.dk/form/");
    }
    else
    {
        LabelErrorCheck.Text = "- Husk at acceptere vores handelsbetingelser";
    }
}

到我隐藏的 continueurl 和 cancelurl 和 callbackurl 我已经这样写了:

string okpage_value = "/PayContinue";
            string errorPage_value = "/PayError";
            string resultpage_value = "/PayCallback";

【问题讨论】:

  • 您需要阅读快速支付实施指南以了解支持/可用的 HTTP 请求方法。
  • 接受的方法在错误消息中说明——HTTP POST。您需要构造和发送 POST 请求而不是浏览器重定向。
  • @Avijit 在丹麦哪里可以找到它?,我根本找不到。
  • @JesperPetersen 可能您需要使用谷歌翻译器将其从英语翻译成丹麦语。

标签: c# payment


【解决方案1】:

Response.Redirect 是一个获取请求;您需要设置提交按钮的 PostBackURL 属性,该属性不会回传到您的站点,而是回传到 Quickpay 站点。见this reference on MSDN

<asp:button id="paybutton" runat="server"
  text="Pay with QuickPay" 
  postbackurl="..url.." >
</asp:button>

看起来应该可以了:http://www.appetere.com/Blogs/SteveM/September-2010/Cross-site-posting-of-form-data-to-an-external-URL

【讨论】:

  • 哦,太好了!!现在它的工作,现在它来了,说“缺少/无效的 QuickpayId”
猜你喜欢
  • 1970-01-01
  • 2018-06-24
  • 2013-03-19
  • 2014-08-12
  • 2012-09-27
  • 2014-01-28
  • 2016-07-17
  • 2017-06-13
相关资源
最近更新 更多