2016-09-14 92 views
1

我試圖通過張貼到https://test.sagepay.com/gateway/service/vspform-register.vspSagepay Server集成上的第一篇文章

啓動與sagepay交易測試,我注視着關於格式的文檔這樣的要求應該採取的,我5003錯誤代碼我已經在測試環境的門戶網站上將我的IP列入了白名單,並且我正在使用VPSProtocol=3.00(這是我見過的兩個導致此問題的問題),但我仍然收到5003錯誤。

我已經講過支持電話併發布到他們的showpost端點(https://test.sagepay.com/showpost/showpost.asp)。雖然它的格式爲Name=Value格式,但由&分隔,URL編碼類似於文檔規定的值並提供了所有必填字段,但它似乎無法理解我的POST的任何詳細信息。

我試過URL編碼= s和& s,以防萬一我誤解了這方面的文檔,但它沒有任何區別。

我相信我必須以某種方式錯誤地發送身體。我會很感激任何人可以提供的建議。我送機體低於:

VPSProtocol=3.00&TxType=PAYMENT&Vendor=anyjunko&VendorTxCode=123&Amount=143.33&Currency=GBP&Description=TODO&NotificationURL=https%3A%2F%2Fstaging-nelly.anyjunk.co.uk%2Fvs%2Fsagepay-transactions%2F1%2Fsagepay-updates&BillingSurname=NameB&BillingFirstnames=NameA&BillingAddress1=1&BillingAddress2=Putney&BillingCity=London&BillingPostCode=SW11%209YZ&BillingCountry=GB&DeliverySurname=NameB&DeliveryFirstnames=NameA&DeliveryAddress1=1&DeliveryAddress2=Putney&DeliveryCity=London&DeliveryPostCode=SW11%209YZ&DeliveryCountry=GB 

更新:現在我已經有捲曲嘗試這樣做,它的工作正常,但是當我使用從郵遞員或從我的代碼發送它不工作阿卡HTTP客戶。我用

curl命令是:

curl -X POST "https://test.sagepay.com/gateway/service/vspserver-register.vsp" -d "VPSProtocol=3.00&TxType=PAYMENT&Vendor=anyjunko&VendorTxCode=123&Amount=143.33&Currency=GBP&Description=TODO&NotificationURL=https%3A%2F%2Fstaging-nelly.anyjunk.co.uk%2Fvs%2Fsagepay-transactions%2F1%2Fsagepay-updates&BillingSurname=NameB&BillingFirstnames=NameA&BillingAddress1=1&BillingAddress2=Putney&BillingCity=London&BillingPostCode=SW11%209YZ&BillingCountry=GB&DeliverySurname=NameB&DeliveryFirstnames=NameA&DeliveryAddress1=1&DeliveryAddress2=Putney&DeliveryCity=London&DeliveryPostCode=SW11%209YZ&DeliveryCountry=GB" 
+0

您如何發佈?你發送了什麼標題?你需要提供更多細節。 – DavidG

+0

出於測試目的,我使用Postman發送沒有標題的POST。 –

+0

我現在用cURL試過了,它可以工作。它仍然不適用於郵差或我的代碼(使用akka http客戶端)。我不確定是什麼區別。據推測,有一個標題,捲曲發送,我不是從其他人,反之亦然。 –

回答

0

有一些要求從賢者收費文檔中缺少必須提供否則你將得到一個HTTP 500內部錯誤的服務器集成5003

文檔名爲 「SERVER_Integration_and_Protocol_Guidelines_270815.pdf」可以在這裏找到: https://www.sagepay.co.uk/support/find-an-integration-document/server-inframe-integration-documents

首先確保你有跟隨編輯信件的文件,尤其要注意包括所有必填字段和URL編碼名稱=值對的值。

以下要求的文件中未提及:

1 IP地址

的IP地址,從中你的POST發送到〜/ vspserver-register.vsp必須添加到白名單在您的帳戶設置。

  1. 登錄到我的賢者使用管理員帳戶(通常是你的供應商名稱)
  2. 進入「IPVálidas」(對不起管理套件是在西班牙出於某種原因)支付這裏https://testportal.sagepay.com/mysagepay/login.msp
  3. 點擊[Añadir]在右下角
  4. (「添加」)按鈕,在彈出輸入對話框您
    • 「DirecciónIP」(「IP地址」) - 型「什麼是我的IP」變成了谷歌搜索,如果你不」不知道它
    • 你的「Máscarade subred」(「子網掩碼」) - 255.255.255。000
    • 「Descripción」 - 只要你想要的任何名稱,必須是唯一的
  5. 單擊[Añadir]( 「添加」)按鈕

2防火牆

確保您的防火牆不會阻止端口80和443在任一方向上使用HTTP或SSL

3 HTTPS協議

確保您使用TLS版本1.0或更高版本發佈到服務器。另外,還要確保你可以使用的TLS協議之一,在寫賢者收費的時間只支持這些協議

  • TLS1-AES-256-CBC-SHA
  • TLS1-AES-128-CBC-SHA
  • TLS1-DHE-DSS-RC4-SHA
  • TLS1-DHE-DSS-AES-256-CBC-SHA
  • TLS1-DHE-DSS-AES-128-CBC-SHA
  • TLS1-DHE- RSA-AES-256-CBC-SHA
  • TLS1-DHE-RSA-AES-128-CBC-SHA

4 HTTP頭

有隻需要一個HTTP標頭,雖然它仍然有效,如果你在額外的頭,如「主機」或通過「內容長度」,它將如果你這樣做失敗未準確提供

Content-Type: application/x-www-form-urlencoded