調試錯誤,請回到請求來源地,重新發起請求


記錄一下,使用支付寶網頁支付踩過的坑

調試錯誤,請回到請求來源地,重新發起請求

從支付寶官方下載的demo,配置好公鑰發現運行如下錯:

 

官方代碼 .net demo

 

項目中引用 AOPSDK.DLL

 

 

首先說明一下,我是使用秘鑰證書的版的,所有配置完之后還是報錯的。

參考官方文檔 服務端 SDK(老版) - 支付寶開放平台 (alipay.com)

//設置證書相關參數
CertParams certParams = new CertParams
{
    AlipayPublicCertPath = "支付寶公鑰證書路徑",
    AppCertPath = "商戶應用證書路徑",
    RootCertPath = "支付寶根證書路徑"
};
IAopClient client = new DefaultAopClient("https://openapi.alipay.com/gateway.do", APPID, APP_PRIVATE_KEY, "json", "1.0", "RSA2", "utf-8", false, certParams);
//實例化具體API對應的request類,類名稱和接口名稱對應,當前調用接口名稱如:alipay.open.public.template.message.industry.modify 
AlipayOpenPublicTemplateMessageIndustryModifyRequest request = new AlipayOpenPublicTemplateMessageIndustryModifyRequest();
//SDK已經封裝掉了公共參數,這里只需要傳入業務參數
//此次只是參數展示,未進行字符串轉義,實際情況下請轉義
request.BizContent="{" +
"    \"primary_industry_name\":\"IT科技/IT軟件與服務\"," +
"    \"primary_industry_code\":\"10001/20102\"," +
"    \"secondary_industry_code\":\"10001/20102\"," +
"    \"secondary_industry_name\":\"IT科技/IT軟件與服務\"" +
"  }";
AlipayOpenPublicTemplateMessageIndustryModifyResponse response = client.CertificateExecute(request); 
//調用成功,則處理業務邏輯
if(response.isSuccess()){
    //.....
}

 

項目中引用如上,結果代碼報錯了

 

 官方的Demo居然報參數類型錯誤。DefaultAopClient 類怎么會報錯呢?於是反編譯了一下看看究竟是什么原因。

 

 這明顯參數類型不對呀。

於是在求助在線阿里技術,阿里工程師一時間也不知道什么情況(這里就不上圖了),過了10分鍾。給回復說:“您引用AlipaySDKNet.dll 試試”

 

 

 

引用完之后發現,問題竟然好了,又反編譯一下

 

 這次發現參數是對的。  這個坑,本坑已填。有坑繼續補充。。。

 在補個鏈接RSA2和公鑰證書簽名驗簽的區別 (alipay.com)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM