close

這個鬼故事是這樣的 我串接了ECPay 的CreateOrder API 前面Bug都除完了,要串ReturnURL(交易成功回傳網址)時 ,官方文件內說會打POST回來,但是我伺服器收到是GET Method , parameter也不見了

我把ReturnURL 參數改成PTS V2的網址接收看看,確實接收到的是POST沒有錯,但換成我的Server就變成GET了

直接用自己的postman打 參數都抓得到。

檢查了半天,才想到去看nginx 的log  收到的也都是GET 但是用自己的postman打的就是POST

最後才發現,因為我的伺服器有用nginx-proxy做轉發,我在回傳ReturnURL的時候 使用的是Laravel 的route()函數,因此才沒發現,他回傳的時候使用的是http而不是https

我在使用postman打的時候都直接用https 因此nginx-proxy不會幫我轉發,但是如果我用了http 他會幫我自動轉發到https,但是method會變,參數也不見,就是這麼一回事。

就是這樣,紀錄一下我自己的愚蠢。

arrow
arrow
    文章標籤
    程式
    全站熱搜

    工程師黑田 發表在 痞客邦 留言(0) 人氣()