歐付寶金流串接問題


#1

各位大大,
小弟目前公司要串接歐付寶的金流
參考官方的串接文件


也測試過檢查碼加密與官方文件都一致
但是資料一送到歐付寶就只顯示 Parameter Error. utf8 Not In Spec.
官方文件上面寫 “傳送參數值的內容請用 UTF8 格式,且不支援中英文語系之外的文字內容。”

小弟有三個疑問
1.Rails的FormTag不是預設就是UTF8嗎
2.歐付寶指的意思是傳過去的參數,例如ItemName都要轉成UTF-8嗎?
3.我將字串使用force_encoding(‘UTF-8’),可是出來的結果還是一樣…

求大神解答…


#2

把各種英文特殊符號拿掉看看會不會好一點


#3

我其實會先問你一個問題 … 你認為 GET 與 POST 差別在哪裡?

從這邊來討論會好點 … 也就是什麼是 payload … 與 POST 如何製作 payload 的編碼,也才能檢視你送出的 payload 是否正確,也才會有編碼是否正確的答案 … 否則都是空談

快速測試你可以自己建個 receiver 來看你送出的是否正確,但單純這樣測試並不是正解就是,只是單純你的 sender / receiver 能配起來而已,不過至少這會是基本的快速測試,最徹底的應該還是截封包來看

( payload 的稱呼很多,類似 raw post / raw body / 我寫的 payload / form data / chunk … )

再來就是 POST header 段是否能和 payload 的編碼配起來的問題(類似宣告此 POST 是 utf8 編碼),或是你在不能塞中文的欄位塞了中文,有的沒的

utf8 有相容 ascii 的,所以你把 ascii 轉成 utf8 是沒有任何轉換的 … 然而這話題有牽涉到金流問題 … 其實我會建議你去問他們的技術窗口應該會好點?