smtpapi-ruby:サロゲートペア対応したよ

smtpapi-rubyサロゲートペア対応を入れてみました。

smtpapi-rubyはrubyでSendGridのx-smtpapiヘッダにセットする値を生成するためのライブラリです。x-smtpapiヘッダの値にはJSON文字列をセットするのですが、非ASCII文字はUnicodeエスケープする必要があります。で、さらにコードポイント0x10000以降の文字についてはサロゲートペアを使って符号化してあげる必要があります。
今回の対応で、x-smtpapi内(ありがちなのがSubstitutionとかSectionとかで文字を置換するケース)でサロゲートペアが必要な文字が文字化けせずにちゃんとメールが送れるようになったよ、っていうのが今回の記事の内容です。

早速試しに送ってみます。

ゴチャゴチャと読めない部分4文字がサロゲートペアが必要な文字列です。なんて読むのかはわかりませんが。けして文字化けしたわけじゃありません。というわけでSubstitutionの値として設定してもちゃんと置換してくれることが確認できました。

各文字のコードポイント 
0x291B0   
0x291B1   
0x291D3   
0x291D4   

やり方はわかったので他の言語のライブラリもやってみようかな。はたして使ってくれるが世界で何人いるかわかりませんが。

コメント

このブログの人気の投稿

Execノードを使う

SendGridのX-SMTPAPIヘッダの使い方(Section Tags、Substitution Tags編)

Joinノードを使う(その4)