簡體   English   中英

安全標頭無效錯誤消息

[英]Security header is not valid error message

我收到此消息

TIMESTAMP = 2017-03-29T16:36:41Z&CORRELATIONID = 9d5672f086c52&ACK = Failure&VERSION = 204&BUILD = 31674279&L_ERRORCODE0 = 10002&L_SHORTMESSAGE0 =安全性錯誤&L_LONGMESSAGE0 =安全性頭無效&L_SEVERITYCODE0 =錯誤

我確定使用的憑據正確,並且已從“沙箱”帳戶(從“ View API Signature頁面)復制了這些憑據。

我正在嘗試使用URL https://api-3t.sandbox.paypal.com/nvp連接到沙盒環境。
這是我的有效負載的樣子:

METHOD=MassPay&
USR=usr_api1.name.com&
PWD=9M8SWRPX6JMXDHAP&
SIGNATURE=AFcWxV21C7fd0v3bYYYRCpSSRl31AIajEwSIe41AAl--j033rVmjUPI7&
VERSION=204&
RECEIVERTYPE=EmailAddress&
CURRENCYCODE=USD&
L_EMAIL0=some.user%40company.com&
L_AMT0=25

我啟用了TLS1.2。 除了不正確的憑據,是否有任何方法可以跟蹤問題? 或者也許我必須設置我的測試/開發帳戶? 順便說一句,我的開發帳戶不是企業帳戶,而測試帳戶是企業帳戶,而不是客戶帳戶。

這是發出請求的代碼:

var sb = new StringBuilder();
foreach (var field in dic)
{
    sb.Append($"{field.Key}={HttpUtility.UrlEncode(field.Value)}&");
}
sb.Remove(sb.Length - 1, 1);
var payload = sb.ToString().Trim();

var req = WebRequest.Create(SandBoxHost + "?" + payload);
ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3 | SecurityProtocolType.Tls12;

using (var resp = req.GetResponse()){}

憑據和URL是正確的。 但是,我發現,如果您的沙盒公司帳戶未通過信用卡驗證,則無法通過txt文件發送批量付款。 創建新的沙箱用戶時,需要指定此時刻。 猜猜如果您不指定信用卡,它也不能與API一起使用。

真正的問題出在一個字段名稱中。 我用USR代替USER

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM