實施檢查清單
設定附加模組時,請確認最終請求網址正確無誤。
字串值
排除網域
請求字串僅應包含端點及請求參數。
程式碼範例
`/xsell-pwa.js?partnerId=partner123&outboundEndDateTime=2014-01-02T12%3A55%3A00%2B08%3A00&...param=xyz`檢查編碼
請注意,所有參數值均應採用 percent-encoded UTF-8 編碼格式。
檢查所需參數
所有必需參數都必須傳遞。此外,請務必確保:
- 您正在發送的是
destinationTla或latitude其中之一,以及longitude bookingDateTime的數值已過期outboundEndDateTime將於未來推出- 請參閱中的指南,了解 one-way, 往返行程及 multi-destination 航班資訊。
檢查簽名位置
簽名應始終作為最終請求網址的最後一個參數。
簽名
使用正確格式
簽名應採用 Base64 編碼,而非十六進位制。
使用正確的資料類型
轉換為 Base64 編碼時,請將簽名視為整數而非字串。
檢查特殊字元
雖然 Base64 應該會自動處理,但請確認您使用的是正確的特殊字元:
- 將
+替換為-:m6y13j0747-x/h81wEzR9jE1fco= - 將
/替換為_:m6y13j0747-x_h81wEzR9jE1fco= - 從字串中移除所有
=填充:m6y13j0747-x_h81wEzR9jE1fco
檢查長度
簽名長度應精確為 27 個字元。
檢查私密金鑰的可見性
私密金鑰不應在請求網址中公開可見。它僅應在伺服器端用於生成簽名。
網域與終端點
請確保腳本 protocol-agnostic
請包含不帶 HTTP 協議的腳本 (使用//xsell.expedia.com 取代http://xsell.expedia.com),如此系統將自動選擇所需的協議。
檢查請求網址的結構是否正確
最終請求網址應由網域名稱、請求字串 (終端點與請求參數的組合) 以及簽名參數共同組成。
- 網域:
//xsell.expedia.com - 終端點:
/xsell-pwa.js? - 請求參數:
partnerId=partner123&outboundStartDateTime=2024-10-22T11%3A55%3A00%2B08%3A00&outboundEndDateTime=2024-10-22T13%3A55%3A00%2B08%3A00&returnStartDateTime=2024-10-30T20%3A30%3A00%2B08%3A00&returnEndDateTime=2024-10-30T22%3A30%3A00%2B08%3A00&destinationTla=LAX&numOfAdults=2&locale=en-US¤cyCode=USD&bookingDateTime=2024-04-12T12%3A32%3A15%2B08%3A00&bookingId=123ABC&bookingStatus=confirmed - 簽名參數 (必須為最終元素):
&signature=bj01fgT85mUiRmzxxSufSmlGpiI
程式碼範例 //xsell.expedia.com/xsell-pwa.js?partnerId=partner123&outboundStartDateTime=2024-10-22T11%3A55%3A00%2B08%3A00&outboundEndDateTime=2024-10-22T13%3A55%3A00%2B08%3A00&returnStartDateTime=2024-10-30T20%3A30%3A00%2B08%3A00&returnEndDateTime=2024-10-30T22%3A30%3A00%2B08%3A00&destinationTla=LAX&numOfAdults=2&locale=en-US¤cyCode=USD&bookingDateTime=2024-04-12T12%3A32%3A15%2B08%3A00&bookingId=123ABC&bookingStatus=confirmed&signature=bj01fgT85mUiRmzxxSufSmlGpiI
腳本整合
檢查腳本
腳本應包含於 檔案內,位置為<body>。若您使用的是嵌入式模組,請確認所需的 `<div> ` 元素是否存在。
驗證來源政策
對於嵌入式附加模組,其父頁面的來源政策 應設定為origin-when-cross-origin。