促銷活動:未在SOAP裝載中宣告UTF-8字元集時的特殊字元不正確
在擷取Adobe Campaign事件裝載的SOAP交易式訊息工作流程中,特殊字元(例如®、©、™或捲曲的單引號)可能會在儲存的事件資料、預覽、主旨行或傳送的電子郵件中錯誤轉譯。 此行為通常是因為傳送的要求沒有明確的UTF-8字元集宣告所導致,這可能導致隱含的伺服器端編碼解釋。
說明 description
已報告交易式傳遞,其中特殊字元在事件擷取及轉譯後看起來格式錯誤。 問題會顯示在事件預覽和最終傳送的電子郵件中。
受影響的字元範例包括:
- ®轉譯為格式錯誤的文字,例如Ï®
- 其他UTF-8符號和標點符號在主旨或內文中無法正確顯示
- 初步調查確認裝載本身包含有效的UTF-8位元組。 這表示來源內容不一定會發生損毀,但是當要求編碼未明確宣告時,可能會在SOAP要求擷取期間發生。
進一步的測試顯示:
- 在Content-Type標頭中未設定明確的UTF-8字元集而傳送的請求可能會重現問題
- 以charset=UTF-8傳送的請求會正確轉譯相同的字元
- 此行為可在單一環境之外重現,這表示這不是客戶特定的範本問題
- 測試工具差異很重要,因為有些工具會自動強制執行UTF-8並在驗證期間隱藏問題
解決方法 resolution
請確定SOAP要求明確宣告UTF-8編碼。
使用以下標頭:
Content-Type: text/xml; charset=UTF-8
也建議在SOAP內文頂端包含XML宣告:
< ?xml version=“1.0” encoding=“UTF-8”?>
結果
在請求中明確宣告UTF-8後,特殊字元在測試中正確轉譯。
recommendation-more-help
experience-cloud-kcs-help-kbarticles