(1) まずはTNetHTTPClient と TNetHTTPRequestを使う。
⇒ 結果、駄目だった。ヘッダーが指定できない。
(2) IdHttpを使う。
⇒ これだけだとSSLを解決できない。
(3) IdHttpのSSL対応やってみる。
⇒これもうまくいかん。
Indyのコンポーネントを使ってhttpsでサーバーとのデータのやり取りをします。
TIdSSLIOHandlerSocketOpenSSLを使いますが、例によってTurbo Delphiのコンポーネントパレットには載ってないので使うにはちょっと一手間かかります。
libeay32.dll、ssleay32.dll, IdSSLOpenSSLHeaders.pasが必要になります。
事前に上記ファイルを入手し、プログラムと同じフォルダにコピーします。
http://indy.fulgan.com/SSL/ から openssl-0.9.8h-i386-win32-Indy-IntraWebEdition.zip をダウンロードすると、その中に含まれています。
とのこと。
(4) 当初方針のTNetHTTPClient と TNetHTTPRequestを使うことにした。こちらはSSL対応できる。この方式ではAWS API-GWでPOSTを受けられなかったのだが、GETを受けられるので、GETで良いことにした。